ul font-size为0,li设置字体大小后多出下间隙

2016-09-05  本文已影响0人  liujunyan

设置横向布局的ul li时若li使用display:inline-block会因为换行符而使相邻的li出现间距

将ul的字体设置为0同时在li中重新设置需要的字体大小可以解决上述问题,但若在下面的情况下,会多出下间隙

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        div {
            line-height: 3rem;
        }
        ul {
            margin: 0;
            padding: 0;
            font-size: 0;
        }
        li {
            list-style: none;
            font-size: 12px;
            display: inline-block;
        }
        a {
            display: inline-block;
            padding: 0 1.5rem;
        }
    </style>
</head>
<body>
    <div>
        <ul>
            <li>123</li>
            <li>123</li>
            <li>123</li>
        </ul>
    </div>
</body>
</html>

ul外面包裹了一个盒子,盒子设置了行高(注意是行高不是高度)而ul又未设置高度,则其高度会随其父盒子,同时li和ul会有一个下间隙。

解决

总的来说,要出现这样奇怪的现象需要特定的html结构和css样式结合,只要用别的方式代替实现相同的显示效果,以此来避免出现这个问题。

上一篇下一篇

猜你喜欢

热点阅读