But Article
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec blandit nunc id est. Nam mauris nisi, cursus et, viverra sed, imperdiet non, massa. Phasellus non justo. Suspendisse et neque eget elit sollicitudin iaculis. Integer dignissim. Praesent ac velit. Aenean neque. Quisque sit amet magna. Aliquam et lacus ac risus vestibulum semper. Nullam non mauris. Vestibulum auctor dolor sit amet dui. Duis rhoncus justo vel sem. Suspendisse orci arcu, dignissim id, volutpat non, ultricies quis, orci. Nulla volutpat orci ut mi. Nulla facilisi. Donec ullamcorper vulputate diam. Vestibulum quis mi. Suspendisse ligula diam, eleifend quis, nonummy eu, sodales non, nunc. Pellentesque adipiscing lectus ac turpis. Donec mollis, odio at cursus venenatis, purus purus volutpat risus, et tincidunt urna velit nec leo.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec blandit nunc id est. Nam mauris nisi, cursus et, viverra sed, imperdiet non, massa. Phasellus non justo. Suspendisse et neque eget elit sollicitudin iaculis. Integer dignissim. Praesent ac velit. Aenean neque. Quisque sit amet magna. Aliquam et lacus ac risus vestibulum semper. Nullam non mauris. Vestibulum auctor dolor sit amet dui. Duis rhoncus justo vel sem. Suspendisse orci arcu, dignissim id, volutpat non, ultricies quis, orci. Nulla volutpat orci ut mi. Nulla facilisi. Donec ullamcorper vulputate diam. Vestibulum quis mi. Suspendisse ligula diam, eleifend quis, nonummy eu, sodales non, nunc. Pellentesque adipiscing lectus ac turpis. Donec mollis, odio at cursus venenatis, purus purus volutpat risus, et tincidunt urna velit nec leo.
Titre interne article h3
Charte graphique
808080 // Gris lien pied de page
aaa // Liens modules
bbb
ccc // Texte module et pied de page
ddd // bordure gauche et haute blog
eee // fond lien:hover test01
fff
666 // Couleur texte général
f2f2f2 // fond de blog (en remplacement du pattern)
c33 // rouge PêUR
446D87 // bleu PêUR
Test encart code CSS:
CSS
.menuIE {
display:none !important;
display:block;
}
.boutonFF:hover {
height:auto;
cursor:pointer;
color:#fff;
background:#000;
}
a.SousMenu:hover {background:#BCCCD2;}
Test code encart HTML, avec ascenceur:
HTML
<div class="menuIE">
<a class="boutonIE" href="#nogo">Blogs
<table><tr><td>
<a class="SousMenu" href="#nogo">PêUR</a>
<a class="SousMenu" href="#nogo">Zoélie</a>
<a class="SousMenu" href="#nogo">BilboWorld</a>hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
</td></tr></table>
</a>
Texte avec puce:
- volutpat orci ut mi. Nulla facilisi. Donec ullamcorper vulputate diam. Vestibulum quis mi. Suspendisse ligu nonummy eu, sodales non, nunc. Pellentesque adipiscing lectus ac turpis. Donec mollis, odio at cursus venenatis, purus purus volutpat risus, et tincidunt urna velit nec leo. lesquelles doivent pointer ces noms
-
volutpat orci mollis, odio at cursus venenatis, purus purus volutpat risus, et tincidunt urna velit nec leo.
-
volutpat orci ut mi. Nulla facilisi. Donec ullamcorper vulputate diam. Vestibulum quis mi. Suspendisse ligula diam, eleifend quis, nonummy eu, sodales non, nunc. Pellentesque adipiscing lectu.
-
vulputate diam. Vestibulum quis mi. Suspendisse ligula diam, eleifend quis, nonummy eu, sodales non, nunc. Pellentesque adipiscing lectus ac turpis. Donec mollis, odio at cursus venenatis, purus purus volutpat risus, et tincidunt urna velit nec leo.
Ca y'est!!! J'ai enfin réussi à adapter un menu déroulant uniquement en CSS et compatible avec Internet Explorer (IE) et Firefox (FF).
L'astuce est d'écrire 2 fois le menu et sous-menu, 1 fois pour IE (caché de FF) et 1 fois pour FF (caché de IE). Ainsi quelque soit le navigateur, le menu apparaît.
Si pour FF la gestion d'un menu déroulant est un jeu d'enfant, habituellement pour IE, on utilise du javascript.
Toute la difficulté était de trouver une solution pour la gestion du "déroulement" du menu en CSS sous IE. La solution fût de gérer un tableau. Autre difficulté, essayer autant que possible de réduire le nombre de ligne CSS en essayant de rendre communes un maximum de classes et en utilisant le "bypass" d'interprétation de propriété des 2 navigateurs.
ATTENTION: Le code CSS et HTML de ce menu n'est pas très compliqué, mais de par l'architecture du blog générée par Over-blog et sur laquelle on ne peut avoir la main, son intégration dans l'entête peut être assez complexe. Donc si c'est la 1ère fois que vous touchez au CSS, évitez ce menu ;-)
Voili voilou, passons aux choses sérieuses
Ci-dessous, l'exemple avec 2 boutons, vous pouvez aussi allez voir sur mon blog test son intégration dans l'entête:
Ci-dessous le code CSS à insérer tout en bas de votre CSS (j'ai essayé de mettre des noms parlants aux classes afin de comprendre sur quelles parties elles influent :
CSS
.menuIE {
display:none !important;
display:block;
}
a.boutonIE, a.boutonIE:link, a.boutonIE:visited, a.boutonIE:active {
color:#000;
width:90px;
height:18px;
display:block;
background:#c33;
border:1px solid #000;
margin-right:1px;
text-align:center;
float:left;
text-decoration:none;
font-family: verdana;
font-size:10px;
line-height:18px;
overflow:hidden;
}
a.boutonIE:hover {
color:#fff;
background:#000;
overflow:visible;}
a.boutonIE:hover table {
display:block;
background:#eee;
border-collapse:collapse;
}
.boutonFF {
color:#000;
width:90px;
height:18px;
display:block !important;
display:none;
background:#c33;
border:1px solid #000;
margin-right:1px;
text-align:center;
float:left;
text-decoration:none;
font-family: verdana;
font-size:10px;
line-height:18px;
overflow:hidden;
}
.boutonFF:hover {
height:auto;
cursor:pointer;
color:#fff;
background:#000;
}
a.SousMenu, a.SousMenu:link, a.SousMenu:visited, a.SousMenu:active {
display:block;
width:90px !important;
width:88px;
height:18px;
border-bottom:1px solid #000;
text-decoration:none;
color:#000;
font-family: verdana;
font-size:10px;
text-align:center;
background:#eee;
}
a.SousMenu:hover {background:#BCCCD2;}
Voici quelques explications pour comprendres le CSS ci-dessus:
-
.menuIE : affichage du menu pour Internet Explorer, caché pour Firefox grâce à display:none !important; En effet le !important est interprété par Firefox et force ce dernier à utiliser cette propriété alors qu' Internet explorer ne l'interprète pas et prend la propriété suivante.
-
a.boutonIE : style du bouton primaire pour Internet Explorer
-
a.boutonIE:hover : style du bouton primaire au passage de la souris pour Internet Explorer
-
a.boutonIE:hover table : style du tableau (boutons secondaires ou liste déroulante) au passage de la souris pour Internet Explorer
-
.boutonFF : style du bouton primaire pour Firefox - Affichage pour Firefox, caché pour Internet Explorer grâce à display:block !important; En effet le !important est interprété par Firefox et force ce dernier à utiliser cette propriété alors que Internet explorer ne l'interprète pas et prend la propriété suivante.
-
.boutonFF:hover : style du bouton primaire au passage de la souris pour Firefox
-
a.SousMenu : affichage du sous-menu (liste déroulante ou boutons secondaires) aussi bien pour Firefox que pour Internet Explorer.
Ci-dessous le code HTML à insérer dans votre entête en mode source:
HTML
<div class="menuIE">
<a class="boutonIE" href="#nogo">Blogs
<table><tr><td>
<a class="SousMenu" href="#nogo">PêUR</a>
<a class="SousMenu" href="#nogo">Zoélie</a>
<a class="SousMenu" href="#nogo">BilboWorld</a>
</td></tr></table>
</a>
<a class="boutonIE" href="#nogo">Aides
<table><tr><td>
<a class="SousMenu" href="#nogo">Francisek</a>
<a class="SousMenu" href="#nogo">La FAQ</a>
<a class="SousMenu" href="#nogo">Self HTML</a>
</td></tr></table>
</a>
</div>
<div class="boutonFF">Blogs<br />
<a class="SousMenu" href="#nogo">PêUR</a>
<a class="SousMenu" href="#nogo">Zoélie</a>
<a class="SousMenu" href="#nogo">BilboWorld</a>
</div>
<div class="boutonFF">Aides<br />
<a class="SousMenu" href="#nogo">Francisek</a>
<a class="SousMenu" href="#nogo">La FAQ</a>
<a class="SousMenu" href="#nogo">Self HTML</a>
</div>
Voici quelques explications pour comprendre le code HTML ci-dessus:
-
Il y a 2 pavés, le premier est le code HTML pour l'affichage sous Internet Explorer, le deuxième est le code HTML pour l'affichage sous Firefox. Cela implique que vous devez saisir 2 fois les noms des menus primaires, 2 fois les noms des menus secondaires et 2 fois les URLs vers lesquelles doivent pointer ces noms
-
Vous devez remplacer #nogo par l'URL du lien que vous souhaitez.
-
Seul sous Internet Explorer le menu primaire peut-être un lien. Si vous ne voulez pas qu'il pointe sur une adresse particulière, laisser #nogo
Soyez très attentif à la personnalisation de ce menu, en effet quand vous changez une propriété du CSS pensez à vérifier l'impact sous FF et sous IE car cette propriété peut se trouver à 1 endroit pour FF et à un autre pour IE.... soyez homogène. Quelques pistes pour vous aider:
-
Changer la couleur de fond du bouton primaire : modifier background dans a.boutonIE ET .boutonFF
-
Changer la couleur de fond du bouton primaire au passage de la souris: modifier background dans a.boutonIE:hover ET .boutonFF:hover
-
Changer la couleur de fond du menu déroulant: modifier background dans a.boutonIE:hover table ET a.SousMenu
-
Changer la couleur du lien survolé au passage de la souris dans le menu déroulant: modifier background dans a.SousMenu:hover
-
Si vous voulez changer la largeur des menus.... évitez! Sinon: changer la largeur des boutons primaires via la propriété width dans a.boutonIE ET .boutonFF + changer la largeur des menus déroulants via la propriété width:'largeur des boutons primaires'px !important pour FF et width:'largeur des boutons primaires - 2'px pour IE dans a.SousMenu (Hummmm, bon courage!!)
-
Si vous voulez changer la hauteur du menu primaire.... évitez! Sinon, changer la hauteur des boutons via les propriétés height et line-height (qui doivent avoir la même valeur) dans a.boutonIE ET .boutonFF
-
Si vous voulez changer la hauteur des différents boutons dans le menu déroulant.... évitez! Sinon, changer la hauteur des boutons via la propriété height dans a.SousMenu
-
Enfin, veillez à ce que la taille de la police soit inférieure à la taille des différents boutons: font-size inférieur à height quelque soit la classe du CSS.
Pour finir, au niveau de l'intégration du menu dans l'entête, vous devez veiller à ce que la hauteur de l'entête soit suffisante pour contenir le "déroulement" du menu. En effet s'il n'est pas assez haut, sous FF, le menu déroulant apparaitra mais ne sera pas cliquable et sous IE le menu primaire sera "rogner"!!!! Pour augmenter la taille de votre entête vous pouvez rajouter la propriété height à l'identifiant de l'entête:
CSS
#top { [ne touchez pas ce qui existe dejà]; height:200px; }
200px est donné à titre d'exemple, en effet tout dépend du contenu de votre entête. Si vous n'avez pas d'idée de la hauteur à mettre, procéder par dichotomie: mettre 200px, et augmentez la taille progressivement jusqu'à le menu s'affiche correctement sous IE et FF.
Bon courage!!!!!!!!!!!!!!!!



