去除inline-block元素间间距

现象描述

真正意义上的inline-block水平呈现的元素间,换行显示或空格分隔的情况下会有间距:

那么解决此问题有好多种方法,但是个人比较喜欢使用其中两种:如下

由于现在html页面都是使用html5 

所以就使用

1、让闭合标签吃胶囊

如下处理:

<ul class="space">
    <li href="##">去除
    <li href="##">结束
    <li href="##">标签</li>
</ul>

 

注意,为了向下兼容IE6/IE7等喝蒙牛长大的浏览器,最后一个列表的标签的结束(闭合)标签不能丢。

在HTML5中,我们直接:

<ul class="space">
    <li href="##">去除
    <li href="##">结束
    <li href="##">标签
</ul>

 

好吧,虽然感觉上有点怪怪的,但是,这是OK的。但是如果是div标签就不适合此种写法。 

2、使用letter-spacing

类似下面的代码:

.space {
    letter-spacing: -3px;
}
.space li {
    letter-spacing: 0;
}

该方法可以搞定基本上所有浏览器,包括IE6/IE7浏览器,不过Opera浏览器下有蛋疼的问题:最小间距1像素,然后,letter-spacing再小就还原了。

3、最简单的 当然还是写页面的时候不要换行(但是不能保证就没有空格或者后期会不会进行压缩或者格式整理)

<ul class="space"><li href="##">去除<li href="##">结束<li href="##">标签</ul>

 

更多方法 可参照 http://www.zhangxinxu.com/wordpress/2012/04/inline-block-space-remove-%E5%8E%BB%E9%99%A4%E9%97%B4%E8%B7%9D/

posted @ 2016-08-01 09:35  Gaochunling  阅读(120)  评论(0)    收藏  举报