Pour un premier tutoriel je vais reprendre celui que j’ai fait pour un autre site ( CSS Only Design ). C’est un menu totalement en CSS, histoire de montrer ce dont les CSS sont capables. Evidemment, il fonctionne sur les 5 principaux navigateurs, à savoir : IE6, IE7, FF, Opera et Safari. Vous pouvez l’utiliser pour votre site si vous le voulez, j’apprécierais cependant un lien vers l’auteur. Voici le résultat obtenu.
Le code HTML
Ici rien de plus simple, une simple liste fait l’affaire, avec un id pour toute la liste.
<ul id="tut01"> <li><a href="#"><span>Accueil</span></a></li> <li><a href="#"><span>Tutoriaux</span></a></li> <li><a href="#"><span>Portfolio</span></a></li> <li><a href="#"><span>A propos</span></a></li> </ul>
Le code CSS
Ici, le but est de faire en sorte que le menu aie un look sympa (un style noir) et qu’en passant le curseur par dessus il devienne vert. Tout est une question de couleurs. Il faut tester les couleurs sous Photoshop par exemple et les changer à votre guise. Etant donné que les CSS ne gèrent pas les dégradés, il faut jouer sans. A la base, c’est un défi (utiliser uniquement des CSS). Et au final il y a 2 contraintes :
- la largeur du menu doit être fixe (ici 400 pixels)
- la largeur de chaque élement du menu doit être la même (ici 100 pixels), et la somme de toutes les largeurs doit être égale à celle du menu (ici 4×100 = 400 pixels)
N’oubliez pas de prendre en compte la bordure extérieure de 1 pixel. Voici le code obtenu:
#tut01{
border:1px solid #5b9400;
height:36px;
list-style:none;
margin:0 auto;
margin-bottom:15px;
padding:0;
width:400px;
}
#tut01 li{
display:inline;
}
#tut01 li a{
background:#434b4a;
border-bottom:18px solid #070607;
display:block;
float:left;
font-size:13px;
height:18px;
line-height:18px;
text-align:center;
text-decoration:none;
width:100px;
}
#tut01 li a span{
color:#fff;
font-weight:bold;
position:relative;
top:9px;
}
#tut01 li a:hover{
background:#a2d84e;
border-bottom:18px solid #7dbf0f;
}
7 commentaires
Holy le 1 Dec à 02:00
Je passais par là et je trouve l’effet impeccable et tellement simple.
Un petit coup de chapeau ^^
Bouctoubou le 5 Dec à 23:32
Effectivement, quand j’ai vu le menu, je me suis demandé comment l’effet était fait avec uniquement du css. Et faut avouer que je n’avais jamais pensé à mettre un border-bottom de xxpx. Bien vu !
Par contre, le problème avec ce genre de menu, c’est de le centrer si on a pas une taille fixe et qu’on utilise un float:left… Il existe bien un moyen en javascript il me semble, mais ce n’est pas l’idéal…
Enfin en tout cas, merci pour ce petit tutoriel.
ps : dans ton footer, sur ce blog, l’espace en bas de cette illustration fort sympathique est normal ?
bbx le 6 Dec à 13:52
C’est une des contraintes: la liste doit avoir une largeur fixe (et on peut donc le center facilement avec un margin: 0 auto; comme ici).
En ce qui concerne l’espace en bas de page, ce n’est pas du tout normal en effet! Je vais y remédier ce soir.
Martin le 11 Dec à 11:07
Jolie performance, car nombreux sont les menus CSS dont le survol ne fonctionne pas sous IE 6, et celui-ci échappe à la règle pour être compatible ! Non, vraiment, j’ai beau chercher des poux dans ton site, je n’en trouve aucun !
Si j’étais de mauvaise foi, je pourrais te dire que ton habillage inclus un JavaScript pour afficher ton entête Flash, et que cela faisait une requête non indispensable au serveur pour quelques lignes de code à peine, sans oublier qu’en cas de désactivation du JavaScript, alors que le Flash peut être activé, ce dernier ne peut s’afficher. Je comprends bien que l’astuce consiste à activer les contrôles ActiveX sous Internet Explorer. Encore une fois, ce serait être de mauvaise foi que de le remarquer.
Pour en revenir à ton menu CSS, je ne peux que te féliciter : simple et efficace. Que demander de mieux ? Félicitations !
AuStrAL!@ le 12 Dec à 18:16
En surfant sur le Site du Zéro, je suis tombé, sur ton site, que je trouve vraiment pas mal !
Le design j’adore ! J’ai lu quelques uns de tes articles, dont “What’s wrong here AAA BBB sur Facebook” qui m’a un peu retourné le cerveau pour pas grand chose !
Et là, je viens de tomber sur ce tuto, je suis tout simplement bluffé par le résultat !
Vraiment bien joué !
Allez hop, j’ajoute bbxdesign dans mes favoris !
Bonne continuation !
Cecile le 14 Feb à 14:49
Excellent effet reflet !
Histoire d’un redesign | bbxdesign le 5 Dec à 23:22
[...] donc pas mal de changements dans ce dernier thème. J’en ai profité pour mettre à jour mon tutoriel de menu 100% css et je compte prochainement rajouter un theme switcher, ainsi qu’un footer (à [...]