水平项目的响应流困境
Responsive flow dilemma with horizontal items
对于我的网站,我已经多次使用一个 css class,直到现在它一直都很好。
这是它的精简版:
.list {
font-size: 0;
font-family: Lucida Grande;
}
.list__item {
display: inline-block;
width: 50%;
font-size: 12px;
min-height: 100px;
border: 1px solid black;
box-sizing: border-box;
}
@media (max-width: 500px) {
.list__item {
width: 100%;
display: block;
}
}
如果您不希望左侧项目位于右侧项目之下,这当然可以完美运行。现在这就是我现在遇到的情况,我正在寻找一种不脏或太多代码的方法来执行此操作。
我还创建了一个 fiddle 来玩:http://jsfiddle.net/sjbe00nk/1/。
所以想要的行为是我希望左边的块在右边的块下面。
您可以在响应式屏幕上使用浮动来更改布局,但这主要是通过更改项目的顺序,然后使用 CSS 调整水平定位来完成的。
示例:
http://jsfiddle.net/sjbe00nk/2/
首先更改项目的顺序:
<div class="list">
<div class="list__item right">
right
</div>
<div class="list__item left">
left
</div>
</div>
然后就可以调整他们的浮动,响应时清除浮动。
.list__item {
display: block;
width: 50%;
font-size: 12px;
min-height: 100px;
border: 1px solid black;
box-sizing: border-box;
}
.left{
float:left;
}
.right{
float:right;
}
一个 much 做所有这些的更好方法是使用 flexbox,尽管对它的支持还不是 100%——请参阅这篇关于它如何工作的文章:http://css-tricks.com/snippets/css/a-guide-to-flexbox/ – 如果您正在开发一个内部系统,那么 flexbox 将是一种更好的方法,例如,您可以在其中保证人们将在什么浏览器上查看。
对于我的网站,我已经多次使用一个 css class,直到现在它一直都很好。
这是它的精简版:
.list {
font-size: 0;
font-family: Lucida Grande;
}
.list__item {
display: inline-block;
width: 50%;
font-size: 12px;
min-height: 100px;
border: 1px solid black;
box-sizing: border-box;
}
@media (max-width: 500px) {
.list__item {
width: 100%;
display: block;
}
}
如果您不希望左侧项目位于右侧项目之下,这当然可以完美运行。现在这就是我现在遇到的情况,我正在寻找一种不脏或太多代码的方法来执行此操作。
我还创建了一个 fiddle 来玩:http://jsfiddle.net/sjbe00nk/1/。
所以想要的行为是我希望左边的块在右边的块下面。
您可以在响应式屏幕上使用浮动来更改布局,但这主要是通过更改项目的顺序,然后使用 CSS 调整水平定位来完成的。
示例:
http://jsfiddle.net/sjbe00nk/2/
首先更改项目的顺序:
<div class="list">
<div class="list__item right">
right
</div>
<div class="list__item left">
left
</div>
</div>
然后就可以调整他们的浮动,响应时清除浮动。
.list__item {
display: block;
width: 50%;
font-size: 12px;
min-height: 100px;
border: 1px solid black;
box-sizing: border-box;
}
.left{
float:left;
}
.right{
float:right;
}
一个 much 做所有这些的更好方法是使用 flexbox,尽管对它的支持还不是 100%——请参阅这篇关于它如何工作的文章:http://css-tricks.com/snippets/css/a-guide-to-flexbox/ – 如果您正在开发一个内部系统,那么 flexbox 将是一种更好的方法,例如,您可以在其中保证人们将在什么浏览器上查看。