28172 sujets
CSS et mise en forme, CSS3
Bonjour,
Pas certain d'avoir bien compris ta question. Au cas où, lire dans les astuces: Comment marquer la page en cours comme active dans le menu ?
Modifié par Florent V. (01 Feb 2009 - 23:35)
Pas certain d'avoir bien compris ta question. Au cas où, lire dans les astuces: Comment marquer la page en cours comme active dans le menu ?
Modifié par Florent V. (01 Feb 2009 - 23:35)
C'est exactement ça.
Dans mon menu, quand on survole un lien, ça souligne en bleu (avec a:hover)
Je voudrais que quand je sois sur la page contact, dans le menu, Contact soit souligné en rouge. (quelle propriété utiliser ??)
Le problème de ton lien, c'est que mon menu n'est pas une liste^^ (menu horizontal)
Dans mon menu, quand on survole un lien, ça souligne en bleu (avec a:hover)
Je voudrais que quand je sois sur la page contact, dans le menu, Contact soit souligné en rouge. (quelle propriété utiliser ??)
Le problème de ton lien, c'est que mon menu n'est pas une liste^^ (menu horizontal)
Arthur69 a écrit :
Le problème de ton lien, c'est que mon menu n'est pas une liste^^ (menu horizontal)
Houlà... si ça te semble être un problème, c'est que tu as de graves lacunes en HTML et CSS! (Pour rappel, on peut assez simplement faire un menu horizontal à partir d'une liste non ordonnée.) Et quelques problèmes de compréhension, car l'article pointé par Igor ne dit pas «utilisez une liste»; il s'avère juste que l'exemple utilisé utilise une liste, mais rien ne t'empêche d'utiliser le principe décrit avec un autre balisage HTML.
J'ai organisé mon menu avec une liste, et ça marche comme avant.
Mais je n'arrive pas à régler ce soulignement du lien actif (ouvert)...
HTML
CSS
Mais je n'arrive pas à régler ce soulignement du lien actif (ouvert)...
HTML
<ul id="underlinemenu">
<li><a href="locations.html"><strong>Locations</strong></a></li>
<li><a href="contact.html"><strong>Contact</strong></a></li>
<li><a href="dossier.html"><strong>Dossier</strong></a></li>
</ul>
CSS
#underlinemenu {
margin: 0;
margin-bottom: 0em;
padding-left: 0;
padding-bottom: 3px;
text-align: center;
margin-left: auto;
margin-right: auto;
color: #808080;
background-color: #ffffff;
font-size: large;
width: 40%;
border: 2px solid #DFDFDF;
border-width: 1px 0;
}
ul#underlinemenu {
color: #808080;
background-color: #ffffff;
font-size: large;
list-style-type: none;
}
ul#underlinemenu li{
display: inline;
}
ul#underlinemenu li a:active {
color: #0000FF;
background-color: #ffffff;
border-bottom: 4px solid #0000FF;
}
#underlinemenu a:hover{
color: #0000FF;
background-color: #ffffff;
border-bottom: 4px solid #0000FF;
margin-bottom: 0;
margin-top: 0;
font-weight: bold;
text-decoration: none;
}
Arthur69 a écrit :
Tu me conseilles plutôt de faire des menus listés ??
Disons que c'est une convention, et que ça peut être pratique (en plus de chaque lien, ça fournit un conteneur pour chaque item -- LI -- et un conteneur pour l'ensemble des items -- UL).
Sinon, je lis ton code et j'ai l'impression que tu n'as pas lu l'astuce indiquée par Igor -- ou alors en diagonale -- car tu fais toujours la confusion dénoncée dans cette astuce. À savoir: il ne faut pas utiliser la pseudo-classe :active, ça ne sert pas à ça!
Mais les torts sont partagés, car le texte et les exemples de cette astuce peuvent entretenir la confusion si on les lit de manière un peu distraite (;)). Pour éviter cela, j'ai complètement réécrit cet article. Maintenant, ça devrait être plus clair. Je te renvoie donc à cette nouvelle lecture:
http://www.alsacreations.com/astuce/lire/28-styles-lien-page-en-cours.html
Bonne continuation.
knarf a écrit :
Est-ce que c'est vraiment inutile et une perte de temps de styler a:active ?
Navigation au clavier sous IE
Oui, mais le fait qu'IE 6-7 n'utilise pas :focus mais :active est un bug. Dans un article sur les pseudo-classes pour les liens, je développerais sans doute ce point, mais là la digression est déjà suffisamment importante.
Arthur69 a écrit :
Mieux vaut remettre le lien contact
Pourquoi donc? Mis à part certains cas précis (catalogues à plusieurs niveaux de navigation par exemple), c'est plutôt un non-sens de laisser le lien vers la page sur laquelle je me trouve…
Arthur69 a écrit :
lui mettre l'id "lien_actif"
Re-pourquoi donc?
Arthur69 a écrit :
et en CSS le mettre en gras.
Rappel: l'élément strong ne sert pas à mettre en gras…
Modifié par Benjamin D.C. (03 Feb 2009 - 11:00)
Benjamin D.C. a écrit :
c'est plutôt un non-sens de laisser le lien vers la page sur laquelle je me trouve…
C'est un point à prendre en considération. À l'inverse, il peut être gênant de modifier le comportement d'un item du menu de navigation: un coup cliquable, un coup plus cliquable. L'utilisateur peut vouloir cliquer à nouveau sur la rubrique ou l'article en cours pour s'assurer qu'il est au bon endroit par exemple («c'est bien ici que je suis? bon on va vérifier... ok c'est bon»), lorsqu'il est un peu perdu.
Sans étude avancée des avantages de l'un et de l'autre, difficile de trancher. Et même avec une étude, pas sûr que le résultat soit valable pour tout site web.
Pour ma part je préfère garder un lien, et me contenter d'une mise en forme graphique. Si l'utilisateur s'attend à ce que ce ne soit pas cliquable, il est probable (mais pas garanti) qu'il ne cliquera pas. S'il s'attend à ce que ce soit un lien, et qu'il clique pour une raison ou une autre, ça tombe bien, ça marchera.
Je trouve évident de mettre un menu complet sur chaque page, même le lien de la page active.
strong ne sert pas à mettre en gras, certes, mais il sert à montrer qu'un élément est important, généralement retranscrit par une mise en gras, c'est du pareil au même...
L'important ici est de savoir comment mettre en avant le lien de la page active, pour montrer qu'on est bien dessus.
Florent : Je penses également qu'il est important de laisser ce lien de page active cliquable, déjà pour vérifier qu'on y est bien, et ça peut permettre d'actualiser la page aussi, même si en html, ça n'a pas d'intérêt...
strong ne sert pas à mettre en gras, certes, mais il sert à montrer qu'un élément est important, généralement retranscrit par une mise en gras, c'est du pareil au même...
L'important ici est de savoir comment mettre en avant le lien de la page active, pour montrer qu'on est bien dessus.
Florent : Je penses également qu'il est important de laisser ce lien de page active cliquable, déjà pour vérifier qu'on y est bien, et ça peut permettre d'actualiser la page aussi, même si en html, ça n'a pas d'intérêt...
Florent V. a écrit :
Et même avec une étude, pas sûr que le résultat soit valable pour tout site web.
En effet, c'est d'ailleurs un sujet assez controversé. Une piste de réflexion pourrait être d'observer un parallélisme avec les breadcrumbs où l'item courant n'est que rarement cliquable…
Arthur69 a écrit :
strong ne sert pas à mettre en gras, certes, mais il sert à montrer qu'un élément est important, généralement retranscrit par une mise en gras, c'est du pareil au même...
Désolé d'insister mais non, ce n'est pas pareil. Exemple avec un menu en images:
<strong><img alt="Accueil" src="home.png" /></strong>