为什么我的内联块之后有空格?

Doc*_*dam 5 html css layout whitespace css-float

我正在使用浮动样式来移除空白区域,我希望将其居中,但是在我之后会出现另一个空白区域 div#bar

在此输入图像描述

这是我的HTML:

<div id="foo">
    <div id="bar">
        <div class="divo divo1">test1</div>
        <div class="divo divo2">test2</div>
        <div class="divo divo3">test3</div>
        <div class="divo divo4">test4</div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

和css:

#foo {
    width: 100%;
    background: #999;
    text-align: center;
}
#bar {
    display: inline-block;
}
.divo {
    display: block;
    float: left;
}
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/Kodam/ay3ywtqa/

注意:我不想使用负边距或字体大小0样式.

j08*_*691 9

由于#bar是内联元素,因此它为下行文本元素(例如j,y,g)保留了空间.你可以漂浮左边,但那会崩溃它,所以我建议将垂直对齐设置为顶部:

#bar {
    display: inline-block;
    vertical-align:top;
}
Run Code Online (Sandbox Code Playgroud)

jsFiddle例子