J'essais de créer des onglets avec les tags <ul><li> &<div>.
J'utilise la propriété float:left sur mes tags <li> afin d'afficher mes onglets horizontallement.
Jusque là tout va bien.
Pour avoir des coins ronds sur le haut de mes onglets, j'utilise 4 petits <div> ayant des propriétés border/margin spécifiques.
L'effet est excellent et en plus je peux facilement contrôler les couleurs de fond et des bordures.
Avec Firefox (mozilla, netscape etc.) ca fonctionne, mais avec IE, l'onglet prends tout l'espace dispopible pour sa largeur (la fenêtre) au lieu de s'adapter au contenu textuel.
Je ne comprends pas.
Je sais qu'il est possible de corriger la situation en appliquant une largeur fixe mais le contenu de l'onglet peut changer. J'aimerais plutot que la largeur s'ajuste automatiquement.
Je sais aussi que l'utilisation d'images pourrait régler cette situation mais je perdrais la souplesse de configuration pour les couleurs.
Voici l'exemple:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Untitled</title> <style type="text/css"> <!-- .top1, .top2, .top3, .top4 {display : block; overflow : hidden; height : 1px;} .top1 {background : black; margin : 0px 5px; } .top2 {border-right : black 2px solid; border-left : black 2px solid; margin : 0px 3px;} .top3 {border-right : black 1px solid; border-left : black 1px solid; margin : 0px 2px;} .top4 {height : 2px; border-right : black 1px solid; border-left : black 1px solid; margin : 0px 1px;} .tabbar {display : block; height : 25px; padding : 2px 0 2px 5px; list-style-type : none;} .tabtop {display:inline; background : transparent;} .tabbottom {padding: 0px 5px 5px 5px; border-right : black 1px solid; border-bottom : black 1px solid; border-left : black 1px solid;} .tabcontent {padding: 0px 5px 5px 5px; border-top : black 1px solid; border-right : black 1px solid; border-bottom : black 1px solid; border-left : black 1px solid;} .tabbar li { display : block; float : left; margin: 0 3px 3px 3px;} --> </style> </head> <body> <title1>Without round corners</title1> <ul class="tabbar"> <div style="clear: both"></div> <li> <div class="tabcontent"> <a href="#" onclick="java script:alert('This is Tab A');">Tab A</a> </div> </li> <li> <div class="tabcontent"> <a href="#" onclick="java script:alert('This is Tab B');">Tab B</a> </div> </li> <div style="clear: both"></div> </ul> <title1>With round corners</title1> <ul class="tabbar"> <div style="clear: both"></div> <li> <div class="tabtop"> <div class="top1"></div> <div class="top2"></div> <div class="top3"></div> <div class="top4"></div> </div> <div class="tabbottom"> <a href="#" onclick="java script:alert('This is Tab A');">Tab A</a> </div> </li> <li> <div class="tabtop"> <div class="top1"></div> <div class="top2"></div> <div class="top3"></div> <div class="top4"></div> </div> <div class="tabbottom"> <a href="#" onclick="java script:alert('This is Tab B');">Tab B</a> </div> </li> <div style="clear: both"></div> </ul> </body> </html>