CSS:
ul {
float: left;
margin-right:20px;
}
ul li {
height: 3em;
border: 1px solid #ff0000;
width:200px;
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<ul>
<li> Some text</li>
<li>Some text<br />some more text</li>
<li>some test text3</li>
<li>even more text<br />and more</li>
</ul>
<ul>
<li> Some text</li>
<li>Some text<br />some more text</li>
<li>some test text</li>
<li>even more text<br />and more</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
这是微不足道的,垂直对齐文本并使高度等于行高,如果你只有一行,但不止于此,事情看起来非常棘手.
Pat*_*Pat 13
您可以使用辅助:before元素并添加嵌套<span>:
ul li span {
display: inline-block;
vertical-align: middle;
}
ul li:before{
content: '';
display: inline-block;
vertical-align: middle;
height: 100%;
}
Run Code Online (Sandbox Code Playgroud)
这是它的实际演示.
这是有效的,因为两个内联块元素将彼此垂直对齐.该:before规则创建一个内嵌块元素,其高度与其父级相同,可变高度<span>可以垂直对齐.
您可以通过span在标记中添加a 然后display:table在css中使用etc 来执行此操作:
<ul>
<li><span>Some text</span></li>
<li><span>Some text<br />some more text</span></li>
<li><span>some test text</span></li>
<li><span>even more text<br />and more</span></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
CSS
ul {
display: table;
border-collapse: collapse;
width: 100%;
}
ul li {
height: 3em;
border: 1px solid #ff0000;
display: table-row;
}
ul li span{
display:table-cell;
vertical-align: middle;
}
Run Code Online (Sandbox Code Playgroud)
示例: http ://jsfiddle.net/jasongennaro/nePt6/
| 归档时间: |
|
| 查看次数: |
20276 次 |
| 最近记录: |