CSS3如何去除 inline block 元素之间多出的空格

本篇文章由:http://xinpure.com/about-the-inline-block-element-between-spaces/

说点什么

display: inline-block 属性很好的避免了元素的浮动问题,但是会有点小问题,就是 inline-block 元素间的回车会被显示为一个空格。然而,我们写代码时,都是用回车来格式化的。。。

关于 inline block 元素之间的空格

最简单的方法就是把 inline-block 元素之间的回车删除,就是代码显示有点不美观,影响阅读。

方法总结

以下方法不保证浏览器兼容性问题,仅在 Chrome 浏览器测试通过

HTML Code:

<h5>未处理空格</h5>
<ul>
    <li>One</li>
    <li>Two</li>
    <li>Three</li>
</ul>

<h5>通过格式化代码来去除空格</h5>
<ul>
    <li>One</li><li>
        Two</li><li>
        Three</li>
</ul>

<h5>用空白注释代替回车</h5>
<ul>
    <li>One</li><!--
    --><li>Two</li><!--
    --><li>Three</li>
</ul>

<h5>通过忽略&lt;/li&gt; 去除空格</h5>
<ul>
    <li>One
    <li>Two
    <li>Three
</ul>

<h5>设置 margin-right: -4px 去除空格</h5>
<ul class="margin-fix">
    <li>One</li>
    <li>Two</li>
    <li>Three</li>
</ul>

<h5>设置 font-size: 0 去除空格</h5>
<ul class="font-size-fix">
    <li>One</li>
    <li>Two</li>
    <li>Three</li>
</ul>

<h5>设置 flex-box 去除空格</h5>
<ul class="flex-box">
    <li>One</li>
    <li>Two</li>
    <li>Three</li>
</ul>

CSS Code:

body {
    font-family: sans-serif;
    font-size: 16px;
}

ul {
    list-style: none;
}

li {
    display: inline-block;
    background-color: #000;
    color: #fff;
    padding: 5px;
}

ul.margin-fix li {
    margin-right: -4px;
}

ul.font-size-fix {
    font-size: 0;
}

ul.font-size-fix li {
    font-size: 16px;
}

ul.flex-box {
    display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox;      /* TWEENER - IE 10 */
    display: -webkit-flex;     /* NEW - Chrome */
    display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
}

效果图:

关于 inline block 元素之间的空格

转载于:https://www.cnblogs.com/xinpureZhu/p/4325602.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值