带引号的CSS保证金

时间:2017-01-19 13:22:04

标签: css margin semantic-ui

我正在检查semantic-ui的源文件,并注意到semantic.css中的规则:

margin: '';

一开始,我认为这是一个错字,但这个规则用于3个不同的行。我在谷歌搜索它但却找不到任何东西。这只是一个错误还是有效的?有谁知道为什么要使用这样的规则?

1 个答案:

答案 0 :(得分:3)

摘要

我的猜测是,这是一种允许使用LESS变量的机制,该变量应该被主题覆盖,但也可以为null。在不声明变量的情况下,LESS不会编译为CSS。通过将变量的值设置为有效的initial,您可能会导致不必要的行为。因此,如果主题没有设置它,它们删除属性

实施例

我将以horizontal divider为例展示我的意思。 编译的CSS是:

.ui.horizontal.divider {
  display: table;
  margin: '';
  /* ... */
}
.ui.divider {
  margin: 1rem 0;
  /* ... */
}

在GitHub存储库中,您将找到LESS for the horizontal divider

.ui.horizontal.divider {
  display: table;
  margin: @horizontalMargin;
  /* ... */
}

变量声明可以在相应的.variables file of the theme中找到。在默认主题中,它只是@horizontalMargin: '';。 这将导致水平分频器给出上面显示的更一般.ui.divider的边距(margin: 1rem 0;),并且与autoinitial等边距的有效值不同},inheritunset