CSS问题--display:inline-block 什么时候会显示缝隙

问题:
display:inline-block 什么时候会显示缝隙

解答:
详见下面的扩展问题


扩展问题:
缝隙产生的原因及怎么解决

解答:
产生的原因:
元素被当成行内元素排版的时候,元素之间的空白符(空格、回车换行等)都会被浏览器处理,根据white-space的处理方式(默认是normal,合并多余空白),原来HTML代码中的回车换行被转成一个空白符,在字体不为0的情况下,空白符占据一定宽度,所以inline-block的元素之间就出现了空隙。这些元素之间的间距会随着字体的大小而变化,当行内元素font-size:16px时,间距为8px。
解决的方案:

移除空格、使用margin负值、使用font-size:0、letter-spacing、word-spacing

  1. 将子元素放置在同一行
  2. 为父元素中设置font-size: 0,在子元素上重置正确的font-size
  3. 为inline-block元素添加样式float:left
  4. 设置子元素margin值为负数
  5. 设置父元素,display:table和word-spacing

你可能感兴趣的:(CrystalのCSS学习整理)