我有一个简单的网格,我正在测试。
我决定在属性选择器float: left中将某些内容从display: inline-block更改为[class*='col-]。
我想知道为什么当使用float: left时,col-9有足够的空间,一切都很好,但是当使用display: inline-block时,元素会下降到下一行。
* {
box-sizing: border-box;
}
.header {
border: 1px solid red;
padding: 15px;
}
.col-1 {width: 8.33%;}
.col-2 {width: 16.66%;}
.col-3 {width: 25%;}
.col-4 {width: 33.33%;}
.col-5 {width: 41.66%;}
.col-6 {width: 50%;}
.col-7 {width: 58.33%;}
.col-8 {width: 66.66%;}
.col-9 {width: 75%;}
.col-10 {width: 83.33%;}
.col-11 {width: 91.66%;}
.col-12 {width: 100%;}
[class*='col-'] {
display: inline-block;
padding-top: 15px;
border: 1px solid red;
} <div class='header'>
<h1>China</h1>
</div>
<div class='row'>
<div class='col-3'>
<ul>
<li>The Flight</li>
<li>The City</li>
<li>The Island</li>
<li>The Food</li>
</ul>
</div>
<div class='col-9'>
<h1>The City</h1>
<p>Chania is the capital of the Chania region on the island of Crete. The city can be divided in two parts, the old town and the modern city.</p>
<p>Resize the browser window to see how the content respond to the resizing.</p>
</div>
</div>
发布于 2016-09-05 18:21:05
<div class='header'>
<h1>China</h1>
</div>
<div class='row'>
<div class='col-3'>
<ul>
<li>The Flight</li>
<li>The City</li>
<li>The Island</li>
<li>The Food</li>
</ul>
</div><!--
--><div class='col-9'>
<h1>The City</h1>
<p>Chania is the capital of the Chania region on the island of Crete. The city can be divided in two parts, the old town and the modern city.</p>
<p>Resize the browser window to see how the content respond to the resizing.</p>
</div>
</div>小黑客,试试这些<!-- -->,它忽略了空格
编辑:,如果您想要删除页眉的微小间隙:
.col-9 {
vertical-align: top;
}发布于 2016-09-05 19:06:04
@Thielicious的答案有一个很好的解决方案。这是你的解释,也是你的答案
我想知道为什么在使用
float: left时有足够的空间供col-9使用,而且一切都很好,但是当使用display: inline-block时,元素会下降到下一行。
inline-block元素之间的空白占用呈现页面上的空间。
Coyier给出了用各种不同的方法绕过这件事 (包括html注释的方法,如the的答案,以及其他一些HTML技巧和CSS方法)
https://stackoverflow.com/questions/39335827
复制相似问题