Comment faire pour aligner le texte sur la droite en utilisant le css quand dans un div avec les éléments de bloc
Je souhaite produire de la disposition suivante à l'intérieur d'un en-tête de la div sur ma page, à l'aide de CSS
+-----------+ + + + Image + texte du Titre du texte aligné à droite + + +-----------+
J'ai du mal à aligner le texte sur la droite. Il conserve l'alignement immédiatement à droite et une ligne ci-dessous le texte du titre, à l'instar de ce
+-----------+ + + + Image + texte du Titre + + Du texte aligné à droite +-----------+
C'est mon actuel de balisage.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<style type="text/css">
#header, #footer { padding: 0.3em 0; border-bottom: 1px solid; }
#header img { display: inline;}
#header h1 { display: inline; margin: 0px; padding: 0px;
vertical-align: 50%; position: left;}
#login-status { margin: 0px; padding: 0px;
display: inline;text-align: right; position: right;}
</style>
<title>Models</title>
</head>
<body>
<div id="header">
<img alt="Logo" height="110" width="276"
src="http://www.google.co.uk/intl/en_uk/images/logo.gif" width="276" />
<h1>Models</h1>
<p id="login-status">You are currently logged in as steve</p>
</div> <!-- end of header -->
</body>
</html>
J'avais prévu de la ligne de style pour ne pas provoquer un saut de ligne après l'élément h1, mais ce n'est pas le cas. Quelqu'un peut-il suggérer ce que je fais de mal?
OriginalL'auteur Steve Weet | 2009-03-28
Vous devez vous connecter pour publier un commentaire.
Il n'y a pas besoin d'un surplus de divs autour des éléments ou une compensation div quand flottante. J'ai utiliser la technique ci-dessus régulièrement pour faire exactement ce que vous essayez de faire. overflow:hidden; rend l'en-tête claire de la flotte, mais si il n'y a pas de largeur spécifiée, vous aurez besoin de zoom: 1; pour IE6. le zoom ne valide pas, mais il fonctionne parfaitement, et vous pouvez l'ajouter à un ie6 seul fichier css si besoin.
C'est une belle solution élégante Justin... et il satisfait de Steve désir d'utiliser moins de marquer. Je l'aime!!!
Merveilleux. Je ne savais pas
overflow:hidden
serait de développer un élément de la flotte qu'il contient. Est lefloat: left
vraiment nécessaire sur leimg
eth1
si? Il me semble qu'il ne l'est pas.OriginalL'auteur
Vous aurez probablement à faire quelque chose comme ça...
Le "Clear" sera nécessaire quelque part dans l'ordre de nettoyer votre flottante, mais elle pourrait être appliquée à un autre balise div qui allait suivre votre tête au lieu d'être inclus dans l'en-tête.
Note... j'ai changé ce un peu pour obtenir le texte des zones qui sont à la droite de l'image pour être aligné verticalement "moyen". Vous pouvez changer le style à css, mais cela ne devrait obtenir ce que vous cherchez.
Merci Steve, content que ma suggestion aidé... bonne chance avec ton projet!!!
OriginalL'auteur
OriginalL'auteur
Utiliser "float:right;"
OriginalL'auteur
J'ai joué un peu avec un peu plus que le css à l'aide du zoom et non de la taille des flotteurs à la fois l'échec de la validation. J'ai aussi fait pas comme l'état de connexion montré à la verticale centrée.
La solution finale que je suis arrivé à (avec beaucoup de mur de soutènement de Bryan) est comme suit :-
OriginalL'auteur