28173 sujets

CSS et mise en forme, CSS3

Bonjour,

C'est sans doute un truc qui me crève les yeux, mais bon, j'vois pas :

J'ai dans un div (un footer) un menu ( en ul /li ) très court (2 items) et je veux y accoler un simple @moi , lien vers mon site..en gros.

 <div id="footer">
<!-- Please leave this line intact -->
<ul class="menu-f"><li class="first">
<a href="/modx/mentions-legales.html" title="Mentions Légales">Mentions Légales</a>
</li>

<li class="last">
<a href="/modx/cgv.html" title="CGV">CGV</a>
</li>
</ul> - ©2007  <a href="www.xxxxxxx" title="Voir le site du concepteur</a>
    </div>


Ceci est généré par le CMF (Modx avec Wayfinder, c'est pour cela que j'emploi des class et non 1 id pour l'UL).
Le div est en flux. seul le wrapper globale de centrage est positionné ds mon template.


Je cherche à obtenir le menu et le txt qui le suit sur la même ligne et centré.
Le rendu fait systèmatiquement un saut de ligne APRES le </ul>
au lieu de laisser le tout sur la même ligne...(FF site pas traité pour les IE à ce stade) si je n'impose pas de width à l'UL .menu-f (prend tout le bloc) et si je lui donne une largeur (200px) le menu reste aligné à Gauche et n'est centré comme mon texte de copyright.

Une idée pour me calmer ;° }- ?

Merci de toute suggestions.

les extraits css :
	#footer {
	clear: both;
	background-color: White;
	border-top: 1px solid #eee;
	padding: 3px 0 3px 0;
	margin: 30px 0 0 0;
	text-align: center;
}

/* ----- menu footer -----*/

.menu-f{
	list-style-type: none;
	margin: 0 0 0 0;
	padding: 3px 0 0 0;
	text-align: center;
	float: left;
	width: 190px;
}

.menu-f li { 
display: inline; }

.menu-f li a {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 0.9em;
	font-weight: bold;
	color: #525252;
	text-decoration: none;
	padding: 1px 0.6em 0 0;
}
.menu-f li.active a {
color: #990099!important;
}
.menu-f li.active a:hover {
color: #990099!important;
background-color: transparent;
}
.menu-f li a:hover
{
	color: #fff;
	background-color: #990099;
}

Modifié par elz64 (03 Feb 2007 - 15:13)
ul et li sont des éléments de type bloc. Si tu passes les li en affichage de type en-ligne, ils se placeront côte-à-côte au sein de l'élément de type bloc ul.

Un élément de type bloc, c'est un passage à la ligne avant et après l'élément.

Le passage à la ligne entre la fin de ton ul et le texte qui suit est donc tout à fait logique.

Solution :
ul.menu-f {
	display: inline;
}
Florent V. a écrit :


Un élément de type bloc, c'est un passage à la ligne avant et après l'élément.


Une boîte bloc (CSS), malheureux ! Smiley bawling

Une boîte bloc, mais pas un élément de type bloc (HTML) !

C'est avec ça que tout a commencé à partir en c...

Sgrmbl.
Modifié par Laurent Denis (02 Feb 2007 - 19:06)
Laurent Denis a écrit :
Une boîte bloc (CSS), malheureux ! Smiley bawling

Une boîte bloc, mais pas un élément de type bloc (HTML) !

Et si je dis « un élément de type bloc, tel que rendu via les styles par défaut des principaux agents utilisateurs, c'est... », ça sera bon ?

Pour contre ça risque d'être un peu obscur. Smiley lol
Une boîte bloc, ça le fait bien.

<more>On s'en tamponne, que ce soit un <p>, un <span>, un <body> ou un <link>. Il est en display:block, c'est tout Smiley cligne </>

<edit>Après, je vous casserai les pieds avec les boîtes en ligne et les boîtes de ligne. Mais après... Smiley lol </>
Modifié par Laurent Denis (02 Feb 2007 - 21:26)
Laurent Denis a écrit :
<edit>Après, je vous casserai les pieds avec les boîtes en ligne et les boîtes de ligne. Mais après... Smiley lol </>

Ah, on m'aura pas avec celle là, je m'y suis déjà cassé les dents. Smiley biggol
Merci de sces précision. Toutefois :

Le fait de mettre un display inline sur le UL règle un truc (le suat de ligne sans avoir un dimensionner le UL)
mais je n'arrive tjs pas à faire que l'ensemble des 2 liens et le txt avec le lien accolé soient ensemble au centre du div du footer.

Si div footer à un text-align entre, seul le texte de copyroght et le lien est centré, le menu reste quant à lui aligné à gauche, loin ..si loin..

C'est un truc vraiment c... ca javais jamais fait attention et ca coince
Modifié par elz64 (02 Feb 2007 - 21:48)
hmm..

vu que c'est en cours..
enfin , discretion et sobriété sont de rigueur Merci


<Edit par Florent V. : modification du lien pour éviter qu'il soit référençable (et cliquable, hélas). />
-http://www.cetavoir.com/modx/ en FF uniquement sinon c'est KTA. (les css IE ne sont pas faites.

Merci
Modifié par Florent V. (03 Feb 2007 - 12:26)
Ah, j'avais pas vu ça dans ta feuille de style :
.menu-f {
	float: left;
}

Si tu fais flotter le menu à gauche, le display: inline ne sert plus à rien et le bloc ira gentiment flotter à gauche, comme demandé.

En supprimant le float: left ça marche très bien.
Pour information, la formule recommandée pour indiquer qu'un problème est réglé est de placer « [Résolu] » dans le titre du sujet. Smiley cligne