--- title: Flow Control Rules introduction: > Sass provides a number of at-rules that make it possible to control whether styles get emitted, or to emit them multiple times with small variations. They can also be used in [mixins](mixin) and [functions](function) to write small algorithms to make writing your Sass easier. --- Sass supports four flow control rules: * [`@if`](control/if) controls whether or not a block is evaluated. * [`@each`](control/each) evaluates a block for each element in a [list][] or each pair in a [map][]. * [`@for`](control/for) evaluates a block a certain number of times. * [`@while`](control/while) evaluates a block until a certain condition is met. [list]: ../values/lists [map]: ../values/maps