删除div之间的边距

这个问题在这里已经有了答案:

  • 如何去除内嵌块元素之间的空间? 32个答案

  • 背景:

    内联块在项目之间插入自然空间。 事实上,如果您要打开内容中的空格键,或者甚至是键入空格键,它实质上就是空格的宽度  (一个html标记空间)。 根据您的字体大小,此空间将更小或更大。

    这个问题有几个修正,我个人以及其他许多人认为这个问题是需要修复的一种“bug”。 也就是说,所有这些修复都可以说是非常“骇人听闻”的。 您选择的解决方案取决于您的个人偏好。

    根据您的具体情况和代码建议解决方案:

    只需切换到使用浮动代替。 而不是设置display: inline-block; 做这个:

    http://jsfiddle.net/uhBW2/9/

    .mainprogress div{
        padding:0;
        margin:0;
        float: left;
    }
    

    其他解决方案

    (请注意,在使用margin-left的JDFiddle解决方案中,如果第一个div不应该这样做,那么第一个div也会向左移动。要解决此问题,您需要在第一个div上实现一个类,并将-4值设为0另一个解决方案和我的首选解决方案是使用:first-child结构伪类来选择第一个div,它更具动态性,并且不需要修改HTML。

  • 通过添加margin-left: -4px;修复边距空间margin-left: -4px; - http://jsfiddle.net/uhBW2/10/
  • 通过使用font-size: 0px;缩小空间来修复空间font-size: 0px; - http://jsfiddle.net/uhBW2/11/
  • 通过删除您的div之间的换行符来修复空间(不推荐 - 难以阅读) - http://jsfiddle.net/uhBW2/12/
  • 通过使用word-space: -.25em;修复word-space: -.25em; (见下面的PavloMykhalov的评论) - http://jsfiddle.net/uhBW2/13/
  • ***其他开发者的注意事项:如果有其他解决方案,请在下面发帖,我会在上面添加它。 我觉得我错过了第五种解决方法...


    该空间是因为您已将div设置为“display:inline-block”而创建的。

    在这里阅读如何解决:

    http://css-tricks.com/fighting-the-space-between-inline-block-elements/


    尝试使用花车,而不是内联块,更广泛的支持,它实际上工作:

    http://jsfiddle.net/uhBW2/7/

    .mainprogress {
        height:60px;
        border:2px solid black;
        overflow: hidden;
    }
    .mainprogress div{
        padding:0;
        margin:0;
        float: left;
    }
    
    链接地址: http://www.djcxy.com/p/89271.html

    上一篇: Remove margin between divs

    下一篇: Can't get rid of spaces between inline