在以下代码段中,.inner1
和.inner2
并非严格垂直居中于.outer
。我使用过Safari的内置网络检查器,但我发现盒子之间没有边距。
.outer {
display: inline-block;
border: 1px solid silver;
}
.inner {
display: inline-block;
margin: 0;
width: 50px;
height: 10px;
}
.inner1 {
border: 1px solid yellow;
}
.inner2 {
border: 1px solid blue;
}
<div class="outer">
<span class="inner inner1"></span>
<span class="inner inner2"></span>
</div>
什么能阻止盒子相互接触,我该如何解决?
我正在使用Safari 9.1.2
答案 0 :(得分:1)
apt-get update
元素上有空格,删除它的一种方法是删除元素之间inline-block
中的空格。
HTML
.outer {
display: inline-block;
border: 1px solid silver;
}
.inner {
display: inline-block;
margin: 0;
width: 50px;
height: 10px;
}
.inner1 {
border: 1px solid green;
}
.inner2 {
border: 1px solid blue;
}
您还可以使用<div class="outer">
<span class="inner inner1"></span><span class="inner inner2"></span>
</div>
删除空格并获取Flexbox
个子元素。
vertical-align
.outer {
border: 1px solid silver;
display: inline-flex;
align-items: center;
}
.inner {
margin: 0;
width: 50px;
height: 10px;
}
.inner1 {
border: 1px solid green;
}
.inner2 {
border: 1px solid blue;
}
答案 1 :(得分:1)
您可以使用flexbox:
.outer {
display: inline-flex;
border: 1px solid silver;
height:25px;
align-items: center;
}
.inner {
display: inline-block;
margin: 0;
width: 50px;
height: 10px;
vertical-align:middle;
}
.inner1 {
border: 1px solid yellow;
}
.inner2 {
border: 1px solid blue;
}
&#13;
<div class="outer">
<span class="inner inner1"></span><span class="inner inner2"></span>
</div>
&#13;