2014-02-17 185 views
0

我在步骤式布局中有一系列div。我正在学习如何使用Scss,我想也许一个mixin可以通过12个divs并为我安排它们。到目前为止,我已经有了:Sass循环:从此元素的第二个实例开始

@mixin steps(){ 
    $stepBlocks: 12; 

    @for $i from 1 through $stepBlocks { 
     .steps-#{$i} { 
      position: absolute; 
      top: (($i * 296) + px); 
      display: block; 
     } 
    } 
} 

这是我的div结构是什么样子: enter image description here

我做了一个HTML样机,以及: http://jsfiddle.net/vdecree/CGGyL/

正如你所看到的,小提琴工作正常,但我怎么能否定第一个的影响?我需要第一个元素是top: 0;是否有if声明我可以使用?如果你认为你有更好的方法可以做到这一点,我会很感激任何帮助。

+0

296看起来像一个很随意的数字。 – cimmanon

回答

0

你可能想要的是从0开始,而不是296px。

@mixin steps(){ 
    $stepBlocks: 12; 

    @for $i from 1 through $stepBlocks { 
     .steps-#{$i} { 
      position: absolute; 
      top: ($i - 1) * 296px; 
      display: block; 
     } 
    } 
} 
+0

工作过,感谢 – Doidgey

相关问题