Page 1 sur 1

CSS et liste

Posté : 26 mai 2009, 15:54
par Nad21
Bonjour
Voilà j'ai un probleme tout bete sur une liste.
Je n'arrive pas a ce que les * ne soient pas surlignés
je veux que quand il n'y ai pas de lien le titre soit surligné et quand il y en a un=pas de décoration
mais avec mon code ca ne fonctionne pas bien dans IE et sur mozilla c'est toujours souligné..
merci
Nadege

Code : Tout sélectionner

<ul> <li>Présentation</li> * <li><a href="#">Stages & formations</a></li> * <li><a href="#">Calendrier</a></li> * <li><a href="#">Contact</a></li> </ul>

Code : Tout sélectionner

#menu {text-decoration:none; font-size: 14px; font-weight: bold; color: #FFFFFF; text-align:left; position:absolute; top:448px; width:462px; height:30px; z-index:3; left:399px; margin-left: 25px; } #menu ul { padding:0; margin:0; list-style:none; } #menu ul li { display:inline; text-decoration:underline; } #menu ul li a { color: #FFFFFF; text-decoration:none; } #menu ul li a:hover { text-decoration:underline; }
[/php]

Posté : 26 mai 2009, 18:29
par AB
Je comprends pas en regardant ton code, en quoi le lien "contact" pourrait être différent des autres ?

Re: CSS et liste

Posté : 26 mai 2009, 21:21
par Victor BRITO

Code : Tout sélectionner

<ul> <li>Présentation</li> * <li><a href="#">Stages & formations</a></li> * <li><a href="#">Calendrier</a></li> * <li><a href="#">Contact</a></li> </ul>
Ce bout de code est invalide syntaxiquement : d'une part, le & doit être codé dans son entité HTML (&) ; d'autre part, aucun caractère imprimable ne doit figurer entre deux éléments LI. Je te conseille de corriger le code comme suit :

Code : Tout sélectionner

<ul> <li>Présentation * </li> <li><a href="#">Stages & formations</a> * </li> <li><a href="#">Calendrier</a> * </li> <li><a href="#">Contact</a></li> </ul>
Chercherais-tu, par hasard, l'effet suivant ?
Code HTML (modifié pour l'occasion)

Code : Tout sélectionner

<ul> <li><span>Présentation</span> * </li> <li><a href="#">Stages & formations</a> * </li> <li><a href="#">Calendrier</a> * </li> <li><a href="#">Contact</a></li> </ul>
CSS

Code : Tout sélectionner

ul a { text-decoration: none; } ul span, ul a:hover { text-decoration: underline; }
Si tu veux surligner au lieu de souligner, remplace underline par overline.

Soit dit en passant, par souci d'ergonomie, il vaut mieux éviter de souligner du texte qui ne soit pas un lien : en effet, beaucoup d'internautes associent soulignement et lien hypertexte (à cause de la feuille de style par défaut des navigateurs graphiques) et risquent de perdre du temps à tenter de cliquer sur un texte souligné, croyant avoir affaire à un lien.

Posté : 28 mai 2009, 14:07
par Nad21
en fait non ce n'est pas l'effet que je veux faire vu que dans ce code le * sont aussi souligné ce que je ne veux pas

Posté : 28 mai 2009, 15:01
par Victor BRITO
en fait non ce n'est pas l'effet que je veux faire vu que dans ce code le * sont aussi souligné ce que je ne veux pas
Justement, as-tu repris ma suggestion de code HTML (celui avec le span d'ajouté) et CSS ? :roll: