如果所有元素都跨越一列,Omega需要吗?

时间:2013-01-21 20:04:18

标签: compass-sass sass susy-compass

如果所有元素都只包含一列,Susy 会自动(不指定omega)填充多列布局吗?

想要的

+---------+---------+
| I       | want    |
+---------+---------+
| two     | columns |
+---------+---------+

获取(以下代码):

+---------+
| I       |
+---------+
| want    |
+---------+
| two     |
+---------+
| columns |
+---------+

HTML:

<div id="container">
  <div>I</div>
  <div>want</div>
  <div>two</div>
  <div>columns!</div>
</div>

SCSS:

@import 'susy';

$total-columns: 2;
$column-width: 200px;
$gutter-width: 5px;
$grid-padding: 10px;

#container {
    @include container;
    @include susy-grid-background;

    &>div {
        @include span-columns(1);
        height: 50px;
    }
}

1 个答案:

答案 0 :(得分:1)

没有。你需要指定omega,因为否则Susy将不得不承担太多关于你的标记和期望结果的事情。我们会不惜一切代价避免这种情况。解决此问题的最佳方法是使用nth-omega() mixin:

div {
  @include span-columns(1);
  @include nth-omega(even);
}

它是:nth-child()选择器的简单扩展,并采用相同的关键字,数字或算法。