添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

像其他任何属性声明一样,旧版本的LibSass和Ruby Sass会解析自定义属性声明,从而允许使用完整范围的 SassScript表达式 作为值。但这与CSS不兼容。

兼容性:
Dart·Sass(Dart Sass)
LibSass
3.5.0开始
rubySass
3.5.0开始

CSS 中的自定义属性声明中使用规范允许的字符几乎所有的字符串。即使这些值对于任何 CSS 属性可能都没有意义,也可以从JavaScript中访问它们。当将它们解析为SassScript值时,原本有效的普通 CSS 语法将无法解析。例如, Polymer库 使用此 来支持纯 CSS mixins:

SCSS 语法

:root {
  --flex-theme: {
    border: 1px solid var(--theme-dark-blue);
    font-family: var(--theme-font-family);
    padding: var(--theme-wide-padding);
    background-color: var(--theme-light-blue);

CSS 输出

:root {
  --flex-theme: {
    border: 1px solid var(--theme-dark-blue);
    font-family: var(--theme-font-family);
    padding: var(--theme-wide-padding);
    background-color: var(--theme-light-blue);

为了提供与纯 CSS的 最大兼容性,Sass的最新版本要求将自定义属性值中的SassScript表达式写入 插值中 。插值也适用于旧版本的Sass,因此建议所有样式表使用。

SCSS 语法

$accent-color: #fbbc04;
:root {
  // WRONG, will not work in recent Sass versions.
  --accent-color-wrong: $accent-color;
  // RIGHT, will work in all Sass versions.
  --accent-color-right: #{$accent-color};

Sass语法

$accent-color: #fbbc04
:root
  // WRONG, will not work in recent Sass versions.
  --accent-color-wrong: $accent-color
  // RIGHT, will work in all Sass versions.
  --accent-color-right: #{$accent-color}

CSS 输出

:root {
  --accent-color-wrong: $accent-color;
  --accent-color-right: #fbbc04;

Head️抬头!

由于插值会删除带引号的字符串中的引号,因此可能有必要将其包装在 meta.inspect() 函数中 以保留其引号。

SCSS 语法

@use "sass:meta";
$font-family-monospace: Menlo, Consolas, "Courier New", monospace;
:root {
  --font-family-monospace: #{meta.inspect($font-family-monospace)};

Sass语法

@use "sass:meta"
$font-family-monospace: Menlo, Consolas, "Courier New", monospace
:root
  --font-family-monospace: #{meta.inspect($font-family-monospace)}

CSS 输出

:root {
  --font-family-monospace: Menlo, Consolas, "Courier New", monospace;
      

Sass©2006–2020 Hampton CatlinNatalie WeizenbaumChris EppsteinJina Anne和众多贡献者。可以根据MIT许可证使用和修改它。

  • GitHub上的Sass
  • 网站源代码
  • Bootstrap 中文网
  •