类似于其他的控制指令,@while指令也需要SassScript表达式和直到该语句的计算结果为假之前,它会反复输出嵌套样式。需要注意的关键一点是,在每个迭代记数变量需要递增/递减。
语法
while(condition) { // CSS codes }
示例
下面的例子演示了如何使用 @while 指令:
<html> <head> <title>Control Directives & Expressions</title> <link rel="stylesheet" type="text/css" href="style.css"/> </head> <body> <p class="paddding-50">This is line one with left padding 50. </p> <p class="paddding-40">This is line two with left padding 40.</p> <p class="paddding-30">This is line three with left padding 30. </p> <p class="paddding-20">This is line four with left padding 20. </p> <p class="paddding-10">This is line five with left padding 10. </p> </body> </html>
接下来,创建文件 style.scss
style.scss
$i: 50; @while $i > 0 { .paddding-#{$i} { padding-left: 1px * $i; } $i: $i - 10; }
可以告诉SASS监视文件,并随时使用下面的命令更新SASS文件修改CSS:
sass --watch C:\Ruby22-x64\style.scss:style.css
接着执行上面的命令,它会自动创建 style.css 文件,下面的代码:
style.css
.paddding-50 { padding-left: 50px; } .paddding-40 { padding-left: 40px; } .paddding-30 { padding-left: 30px; } .paddding-20 { padding-left: 20px; } .paddding-10 { padding-left: 10px; }
输出结果
让我们来执行以下步骤,看看上面的代码工作:
保存上面的 html 代码在 @while.html 文件中。在浏览器中打开该HTML文件,得到输出如下显示。


上一篇:
Sass @each指令
下一篇:
Sass控制指令&表达式