Html 在 <li> 中填充
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/3805123/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Padding in <li>
提问by fearofawhackplanet
see jsFiddle example here
在此处查看 jsFiddle 示例
I'm applying padding-top
to an li
to try to align the text nearer to the bottom. But it's just making the li
bigger, even though there seems plenty of room to fit the text.
我正在申请padding-top
ali
以尝试将文本对齐到更靠近底部的位置。但这只是使li
更大,即使似乎有足够的空间来容纳文本。
Any ideas?
有任何想法吗?
<ul>
<li class="padded">x</li>
<li>x</li>
</ul>?
li {
width: 25px;
height: 25px;
border: solid 1px black;
display: inline;
margin: 0 2px 0 0;
float: left;
}
.padded {
padding: 3px 0 0 0;
text-align: center;
}
I get the same results in IE7 and Chrome, not checked any other browser.
我在 IE7 和 Chrome 中得到相同的结果,没有检查任何其他浏览器。
回答by matthughes404
The li.padding is growing larger because you have a height of 25px plus a padding-top of 3px.
li.padding 越来越大,因为你有 25px 的高度加上 3px 的 padding-top。
The you should decrease the height of the li.padding if you want to increase the top-padding, yet have it remain the same height as the plain list item. So to have a 25px high block with 3px padding-top, you should set the height to 22px with a padding of 3px.
如果你想增加顶部填充,你应该减少 li.padding 的高度,但让它保持与普通列表项相同的高度。所以要有一个 25px 高的块和 3px padding-top,你应该将高度设置为 22px,padding 为 3px。
li {
width: 25px;
height: 25px;
border: solid 1px black;
display: inline;
margin: 0 2px 0 0;
float: left;
}
.padded {
padding-top: 3px;
height:22px /* original height (25px) minus padding-top (3px) */
text-align: center;
}