CSS垂直对齐浮动div
我有一个div(#wrapper),其中包含2个并排站立的div。
我希望将右div垂直对齐。我在主包装器上尝试了vertical-align:middle,但是它不起作用。它让我发疯!
希望有人能帮忙。
HTML:
<div id="wrapper"> <div id="left-div">
<ul>
<li>One</li>
<li>Two</li>
</ul>
</div>
<div id="right-div">
Here some text...
</div>
</div>
CSS:
#wrapper{ width:400px;
float:left;
height:auto;
border:1px solid purple;}
#left-div{
width:40px;
border:1px solid blue;
float:left;}
#right-div{
width:350px;
border:1px solid red;
float:left;}
ul{
list-style-type: none;
padding:0;
margin:0;}
回答:
您没有浮点元素的运气。他们不服从垂直对齐,
您需要的是display:inline-block
:
谨防
请小心,display: inline-block;
因为它将元素之间的空白解释为真实的空白。它不会像对待它那样忽略它display: block
。
我建议这样做:
将font-size
包含元素的设置为0
(零),然后将元素重置font-size
为所需的值,如下所示
ul { margin: 0;
padding: 0;
list-style: none;
font-size: 0;
}
ul > li {
font-size: 12px;
}
回答:
#wrapper{ width:400px;
height:auto;
border:1px solid green;
vertical-align: middle;
font-size: 0;
}
#left-div{
width:40px;
border:1px solid blue;
display: inline-block;
font-size: initial;
/* IE 7 hack */
*zoom:1;
*display: inline;
vertical-align: middle;
}
#right-div{
width:336px;
border:1px solid red;
display: inline-block;
font-size: initial;
/* IE 7 hack */
*zoom:1;
*display: inline;
vertical-align: middle;
}
以上是 CSS垂直对齐浮动div 的全部内容, 来源链接: utcz.com/qa/426603.html