CSS 之inline/inline-block 元素间距问题

作者:Jasmine - 2016年03月03日
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
<style type="text/css">
    body{
        font-size: 18px;
    }
    .wrap{

    }
    .wrap div{
        width: 200px;
        height: 200px;
        color: white;
        background-color: #42b983;
        display: inline-block;
        /*inline同理*/
      }
  </style>
  </head>
  <body>
  <div class="wrap">
      <div>这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
      <div >这是一些文字</div>
  </div>
  </body>
  </html>

导致这个问题的原因是:在HTML代码里,空格也会占位。class为wrap的元素继承了body font-size:18px的这个属性值。在非0的font-size值的情况下,间隙就会形成。解决该问题的方法有二:


压缩HTML,把所有空格去掉

为class为wrap的元素设置font-size :0 (但需要把其子元素的该属性重写成正常值)

贴上代码:

<!DOCTYPE html>
    <html lang="en">
        <head>
            <meta charset="UTF-8">
            <title>Document</title>
            <style type="text/css">
                body{
                    font-size: 18px;
                }
                .wrap{
                    font-size: 0;
                }
                .wrap div{
                    width: 200px;
                    height: 200px;
                    color: white;
                    background-color: #42b983;
                    display: inline-block;
                    font-size: 18px;
                    /*inline同理*/
                }
            </style>
        </head>
        <body>
            <div class="wrap">
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
                <div>这是一些文字</div>
            </div>
        </body>
    </html>

来源于: http://www.jianshu.com/p/441eb535e644

本文作者: Jasmine

本文链接: https://www.jianbaizhan.com/article/351

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!


 请勿发布不友善或者负能量的内容。审查将对发布广告等违规信息进行处罚!