【问题标题】:Create selectors with no declaration创建没有声明的选择器
【发布时间】:2019-01-15 23:59:19
【问题描述】:

我打算通过创建 [_partial] 并使用 [@import] 来使用 SASS。

问题:如何创建没有声明的选择器?

我当然会用声明填充选择器, 但该输入来自其他 [_partials]。我是否正确理解 SASS 将删除没有声明的选择器?有什么解决办法吗?

我的部分结构如下所示。

  • @import '_1-partial_variables.sass'
  • @import '_2-partial_divs_only.sass'
  • @import '_3-partial_wrapper.sass'
  • @import '_4-partial_divs_layout.sass'

到目前为止我所做的尝试:

在 [_2-partial_divs_only.sass] 我试过了:

.div-1

(构建执行没有错误,但没有创建 div 本身)。

.div-1 {};

(构建脚本说,“错误:预期的换行符”。

同样的场景使用 SCSS 作为源文件呢?

结果完全一样,没有创建一个带有空白声明的选择器。

我的构建线是:

sass --no-source-map main.sass main.css

【问题讨论】:

  • Sass 不会删除没有样式的 CSS 规则(例如.foo {}
  • @Flying 根据这个报告的 SASS 问题,它将删除它:github.com/sass/sass/issues/2069
  • 谢谢,我错了
  • 我添加了一个有效的答案(正在创建选择器),但它创建了一个不需要的评论结构。如果 SASS 用户可以更好地确认 SASS 的本质是删除具有空白声明的选择器,并找到更好的解决方法,请分享信息。

标签: sass


【解决方案1】:

似乎这是为了让 SASS 编译器创建选择器 [.div-1]:

.div-1
  /*! keep */

这也有效:

.div-1
  /**/

由于源是 SASS 文件,我不添加 [{}] 或 [;]。

这些字符是在从 SASS 构建到 CSS 时自动创建的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-27
    • 2021-09-22
    相关资源
    最近更新 更多