Sass 嵌套规则与属性

Sass 嵌套规则

Sass 让您可以与 HTML 相同的方式嵌套 CSS 选择器。

先看一个站点导航的 Sass 代码示例:

实例

SCSS 语法:

  1. nav {
  2. ul {
  3. margin: 0;
  4. padding: 0;
  5. list-style: none;
  6. }
  7. li {
  8. display: inline-block;
  9. }
  10. a {
  11. display: block;
  12. padding: 6px 12px;
  13. text-decoration: none;
  14. }
  15. }

请注意,在 Sass 中,ullia 选择器嵌套在 nav 选择器中。

在 CSS 中,规则是逐个定义的(非嵌套):

CSS 语法:

  1. nav ul {
  2. margin: 0;
  3. padding: 0;
  4. list-style: none;
  5. }
  6. nav li {
  7. display: inline-block;
  8. }
  9. nav a {
  10. display: block;
  11. padding: 6px 12px;
  12. text-decoration: none;
  13. }

由于您可以在 Sass 中嵌套属性,所以它比标准 CSS 更干净、更易于阅读。


Sass 嵌套属性

许多 CSS 属性具有相同的前缀,如 font-family, font-size 和 font-weight 或 text-align, text-transform 和 text-overflow。

使用 Sass,您可以将它们作为嵌套属性写入:

实例

SCSS 语法:

  1. font: {
  2. family: Helvetica, sans-serif;
  3. size: 18px;
  4. weight: bold;
  5. }
  6. text: {
  7. align: center;
  8. transform: lowercase;
  9. overflow: hidden;
  10. }

Sass transpiler 将转换成为如下 CSS 代码:

CSS 输出:

  1. font-family: Helvetica, sans-serif;
  2. font-size: 18px;
  3. font-weight: bold;
  4. text-align: center;
  5. text-transform: lowercase;
  6. text-overflow: hidden;