Ceci est mon balisage de la page pertinente:élément Div pas d'aligner au milieu d'un autre élément div
<div id="header">
<div id="logo">
<a href="/">Home</a>
</div>
<div id="user_box">
test
</div>
</div>
Et mon CSS pertinente:
#header {
width: 960px;
height: 110px;
}
#logo {
background: url('/assets/img/logo.png') no-repeat center;
width: 300px;
height: 110px;
float: left;
}
#user_box {
width: 300px;
height: 60px;
float: right;
vertical-align: middle;
}
Maintenant, je veux placer le user_box
div dans le milieu vertical du div header
. Après beaucoup de Google et d'expérimentation, j'ai appris que ce n'est pas facile. Apparemment, je ne peux pas aligner verticalement un élément de bloc tel qu'un div. Donc je cherche une autre façon de faire ça.
J'ai vu la méthode hacky display: table;
et j'ai essayé de l'utiliser, mais cela n'a rien changé. Aussi essayé de changer l'élément à un élément en ligne comme un span
, mais cela n'a pas fonctionné non plus. J'ai même essayé d'utiliser margin: auto 0;
pour une raison terrible, et cela n'a pas fonctionné du tout.
Alors je demande de l'aide. Comment puis-je aligner verticalement ce div à l'intérieur de mon div en-tête?
Merci!
Vous voudriez utiliser'Affichage: table-cell, 'la place afin que vous puissiez attribuer le' vertical-align: milieu ; css propriété, mais ce type d'affichage désordre avec beaucoup de choses. – Purag