如何消除inline-block产生的元素间空隙

前端初学者可能都会碰到这个问题:有时候排版须要,会把一些块状元素的display属性设置为inline-block,如css

<!-- HTML代码 -->
<div class="parent">
    <div class="child">child</div>
    <div class="child">child</div>
    <div class="child">child</div>
    <div class="child">child</div>
</div>
/* css代码 */
.child {display:inline-block;background-color:#ccc;}

浏览器中显示的结果:前端

虽然四个块状子元素排在了一行,可是子元素之间却留有空隙!浏览器

空隙产生缘由:HTML中的换行符、空格符、制表符等空白符,字体大小不为0的状况下,空白符占据必定宽度,使用inline-block会产生元素间的空隙。测试

解决方法 :
1. 父元素的font-size设置为0,子元素的font-size设置为实际大小;
2. 子元素设置浮动;
3. 把全部的子元素写在一行;
4. 有时候子元素内容较长,全部子元素写在一行致使代码的可读性不好,这时候采用下面的写法(用HTML注释符把子元素链接起来):字体

<div class="parent"> 
    <div class="child"></div><!--
  --><div class="child"></div><!--
  --><div class="child"></div><!--
  --><div class="child"></div>
</div>

5. 父元素word-spacing设置负值(具体设为多少,我测试的结果显示:不一样浏览器还不彻底一致,暂不推荐此种方法)。spa

------------------------------------------------------------------------------------------------code

参考评论,2015.10.30从新编辑blog

相关文章
相关标签/搜索