|
Pièces portable
Batterie
Bluetooth
Cable LCD
Caddie
Carte graphique
Carte mere
Carte reseau
Carte wifi
Chargeur
Charniere - Fixation
Clavier
Connecteur AC
Coque - Plasturgie
Disque dur
Ecran - Dalle LCD
Enceintes
Inverter
Lecteur - Graveur
Memoire / RAM
Modem
Nappe
Pcmcia
Pile cmos
Processeur
Radiateur
Touchpad
Ventilateur
Webcam
Divers |
Pages: 1
Menu contextuel rollovers en CSSMoulte littérature existe sur le sujet de réaliser des menus en CSS (l’un des plus fameux à mon sens est css.maxdesign qui propose une floppée d’exemples) mais jamais je n’ai rencontré d’exemple proposant simplement un menu de navigation avec un rollover propre à chaque élément du menu. J’entends par là, non pas comme le montre Raphael Goetter sur son site Alsacreations dans son article un menu / rollover en CSS avec une image unique mais un rollover en CSS type à l’ancienne c’est-à-dire avec une image pour chaque état “on” et une image pour chaque état “off”. Rien de révolutionnaire en soit, juste une manière simple de réaliser un menu de navigation avec des rollovers en CSS. Cet article fait suite à Préchargement d’images et est illustré par le menu que j’ai mis en place sur ce site. Code: <body> <div id="prechargement"> <img src="/img/rubrique1_on.gif" alt="" /> <img src="/img/rubrique2_on.gif" alt="" /> <img src="/img/rubrique3_on.gif" alt="" /> <img src="/img/rubrique4_on.gif" alt="" /> <img src="/img/rubrique5_on.gif" alt="" /> </div> On déclare ensuite le menu à l’endroit voulu comme suit : Code: <div id="menu"> <h1><a href="/rubrique1/" class="rub1"><span>rubrique 1</span></a></h1> <h1><a href="/rubrique2/" class="rub2"><span>rubrique 2</span></a></h1> <h1><a href="/rubrique3/" class="rub3"><span>rubrique 3</span></a></h1> <h1><a href="/rubrique4/" class="rub4"><span>rubrique 4</span></a></h1> <h1><a href="/rubrique5/" class="rub5"><span>rubrique 5</span></a></h1> </div> Les balises <h1> entourent chaque rubrique afin d’avoir un code sémantiquement irréprochable, il s’agit d’un menu principal de navigation, il est donc logique d’affecter ici des balises de type <h1>. Code:#menu a span { display: none; } Ensuite on prend bien soin d’affecter une classe particulière sur les balises <a> à chaque élément du menu (class=”rub1”, class=”rub2”, ...) afin de pouvoir contrôler les rollover comme il se doit via la feuille de style. Code: #menu h1 a {display: block; /* pour transformer la balise en balise de type bloc*/ width: 106px; height: 16px; background-repeat: no-repeat; } Reste à réaliser les rollover avec la feuille de style : Code: a.rub1 { background-image: url(/img/rubrique1_off.gif); } a.rub1:hover { background-image: url(/img/rubrique1_on.gif); } a.rub2 { background-image: url(/img/rubrique2_off.gif); } a.rub2:hover { background-image: url(/img/rubrique2_on.gif); } a.rub3 { background-image: url(/img/rubrique3_off.gif); } a.rub3:hover { background-image: url(/img/rubrique3_on.gif); } a.rub4 { background-image: url(/img/rubrique4_off.gif); } a.rub4:hover { background-image: url(/img/rubrique4_on.gif); } a.rub5 { background-image: url(/img/rubrique5_off.gif); } a.rub5:hover { background-image: url(/img/rubrique5_on.gif);} Pour contextualiser le menu, c’est-à-dire faire en sorte que la rubrique 1 soit à l’état “on” lorsque la page dans laquelle on se trouve appartient à la rubrique 1, il faut faire appel au PHP. Dans un site dynamique en PHP, en général, les rubriques correspondent à des variables locales auxquelles on peut faire appelle en faisant : Code:<? echo $rubrique; ?> Cette technique consiste à affecter à la balise <body> du document html un identifiant du nom de la rubrique dans laquelle on se trouve, c’est-à-dire obtenir la chose suivante : Code:<body id="rubrique1"> Il suffit donc de faire : Code:<body id="<? echo $rubrique; ?>"> Ceci étant fait, on ajoute dans la feuille de style : Code: #rubrique1 a.rub1 { background-image: url(/img/rubrique1_on.gif); } /* c'est comme si nous avions body#rubrique1 a.rub1 { background-image: url(/img/rubrique1_on.gif); } */ #rubrique2 a.rub2 { background-image: url(/img/rubrique2_on.gif); } #rubrique3 a.rub3 { background-image: url(/img/rubrique3_on.gif); } #rubrique4 a.rub4 { background-image: url(/img/rubrique4_on.gif); } #rubrique5 a.rub5 { background-image: url(/img/rubrique5_on.gif); } Ainsi, lorsque nous nous trouvons sur une page appartenant à la rubrique 1 (<body id="rubrique1">), la rubrique 1 du menu est bien à l’état “on” (rubrique1 a.rub1 {background-image: url(/img/rubrique1_on.gif);}.
Re: Menu contextuel rollovers en CSSSalut,
Re: Menu contextuel rollovers en CSSbon en fait,
Re: Menu contextuel rollovers en CSSbon c'est réglé, désolée d'avoir innondée ta boite...
Re: Menu contextuel rollovers en CSSSalut Pages: 1
Réponse rapide|==> Faire un lien vers ce sujet ??<a href="http://www.brakstar.com/forum/braktopic_102.html" title="Menu contextuel rollovers en CSS">Menu contextuel rollovers en CSS</a> | ||||||||||||||||||
| |||||||||||||||||||