【问题标题】:How to get rid of horizontal whitespace between divs?如何摆脱div之间的水平空白?
【发布时间】:2015-04-27 06:30:48
【问题描述】:

我一辈子都无法摆脱两个 div 之间的水平空白。我正在使用 twitter 引导程序,可以在 http://www.areyoumoving.com.au 看到英雄图像和页脚之间的空白问题。

【问题讨论】:

    标签: html css


    【解决方案1】:

    我通过十六进制查看器运行了您的页面。在页脚之前肯定是Byte Order Mark (BOM),这意味着您的页脚文件开头有这些字符:

    %3C%2Fdiv%3E%0A%EF%BB%BF%3Cfooter

    这里有很多删除它的方法 - 不仅仅是 AWK

    Using awk to remove the Byte-order mark

    PS:Why would I use a Unicode Signature Byte-Order-Mark (BOM)?

    【讨论】:

    • 是的,如何删除它?
    • 感谢您的建议。我以前从未听说过 BOM,我使用的是 Sublime Text 3,所以我重新打开并使用 UTF8 编码保存了我的文件,而没有 BOM
    • 是的,这很烦人也很令人惊讶。永远不会忘记的事情之一:)
    【解决方案2】:

    我假设您正在使用引导程序中的一些“col-lg/md/sm/xs”类...这些类在其样式中具有预定义的边距/填充。

    只需覆盖这些属性以摆脱它们,在您的 css 文件中添加这些行:

    #yourIdentifier{
        margin:0; //or top/left/right/whatever
    }
    #yourIdentifier{
        padding:0; //whatever ;)
    }
    

    您有时可能必须添加“!important”标签(css 行的结尾)以确保您的编辑得到真正考虑。

    【讨论】:

    • 我正在使用这些类,但是在检查问题后,它并没有像边距或填充问题那样出现。渲染后标记中出现2个随机引号
    • 这些随机引用来自您使用 ::before 和 ::after 属性的事实。这些“预定义”之前/之后的样式看起来就像将内容设置为“”...
    【解决方案3】:

    <footer> 之前有任何垃圾,可能是BOM(如果您包含单个文件的页脚)。

    删除BOM,再次保存文件就可以了。

    【讨论】: