【发布时间】:2015-11-06 16:37:11
【问题描述】:
我想将我的列与它们的 HTML 源顺序不同地对齐。我正在尝试使用 shift() 来执行此操作,但是在水平对齐它们时遇到了问题。
为了更好地展示我的问题,我把这个 CodePen 放在一起: http://codepen.io/anon/pen/gaBYJB?editors=110
HTML
<h1>Resize the browser</h1>
<p>Mobile should be 1, 2, 3 stacked. But desktop should be 3, 1, 2. They do not align correctly horizontally.</p>
<div class="items">
<div class="item item_1">1</div>
<div class="item item_2">2</div>
<div class="item item_3">3</div>
</div>
SCSS
@import "bourbon";
@import "neat";
$bp: new-breakpoint(min-width 768px 12);
body {
padding: 20px;
}
.items {
@include row();
background: #333;
padding: 20px;
}
.item {
@include span-columns(12);
padding: 20px;
color: #fff;
font-size: 22px;
background: #666;
&_1 {
@include media($bp) {
@include span-columns(3);
@include shift(6);
}
}
&_2 {
@include media($bp) {
@include span-columns(3);
@include shift(9);
}
}
&_3 {
@include media($bp) {
@include span-columns(6);
@include shift(-12);
}
}
}
Mobile 应该是 1、2、3 堆叠的(已经可以了)。但是桌面应该是 3、1、2。它们没有正确水平对齐。
我怎样才能以正确的垂直对齐方式实现这种布局?项目 1 似乎正在推动其他项目。
【问题讨论】: