28172 sujets

CSS et mise en forme, CSS3

Bonjour,

Je débute en CSS et je cherche à réaliser (pour l'instant sans succès) un menu horizontal où les premiers liens sont à gauche, et les derniers à droite :
 
-------------------------------------------------------------
| lien1 lien2 lien3                             lien4 lien5 |
-------------------------------------------------------------


Je suis en pleine lecture de Head First HTML with CSS, donc j'espère bien apprendre à faire ce genre de choses moi-même, mais la demande pour le menu est urgente...

Toute aide est la bienvenue Smiley smile
Modifié par Felipe (01 Oct 2009 - 19:00)
Il faut que tu utilise une liste du type:


<ul class="menu">
   <li> lien 1 </li>
   <li> lien 1 </li>
   <li> lien 1 </li>
   <li> lien 1 </li>
   <li> lien 1 </li>
   <li> lien 1 </li>
</ul>


et le css te permettant de le mettre sur une ligne

.menu li {
   display=inline;
}


Ensuite à toi de jouer avec les margin et padding pour avoir ce que tu veux
Salut,

Tu peux éventuellement aligner ton menu complet à droite, et mettre un float: left; sur les liens que tu veux à gauche.

Ceci dit si tu sépare les éléments, c'est qu'il s'agit de types de liens différents, ne serait-il pas plus adéquat d'avoir deux listes de liens clairement séparées dans le code, pour une meilleur sémantisation de la logique de navigation ?
merci à vous deux pour vos réponses

Mikachu : oui deux listes de lien seraient effectivement préférables
ma difficulté c'est comment les juxtaposer sur une même ligne et faire en sorte que dans la première tout soit à gauche, et dans la second tout soit à droite ?

une correction pour mon message initial : je n'avais pas vu que la mise en forme de mon exemple n'avait pas le rendu souhaité, voici une image

upload/23800-Image1.png
Effectivement pour ceci Mikachu a vu juste.

Utilise deux <ul> que tu positionne l'un en float:left et l'autre en float:right.
Administrateur
Florent2 a écrit :
une correction pour mon message initial : je n'avais pas vu que la mise en forme de mon exemple n'avait pas le rendu souhaité, voici une image

upload/23800-Image1.png

Hello,

la balise [ code] (avec le bouton du même nom quand tu rédiges) permet un affichage qui respecte les espaces, car la police utilisée est à largeur fixe (monospace), comme pour l'élément <pre> en HTML.
J'ai édité ton message
Modifié par Felipe (01 Oct 2009 - 19:02)