html - SASS 的关键 CSS

标签 html css sass

我们正在优化我们的网站,以便找出显示页面顶部所需的最少 CSS 集,将其缩小并将其内联添加到 HTML 文档中。为此,我们尝试使用 criticalCSS 和 Penthouse 等工具,但它们包含的选择器太多,因此我们想手动指定要包含的样式。

我们想要做的是这样的:

.body-normal
  +critical()
  background-color: #fafafa
  color: #606060

.footer
  background-color: #c0c0c0
  color: #656565

上面的首选 CSS 输出:

.body-normal {
  background-color: #fafafa;
  color: #606060;
}

有什么方法可以完成这样的事情吗?我找到了 this gist否则会做我们想做的事,但由于我们已经有很多规则,我们希望尽可能避免将所有内容包装在 @include critical(false) 中。

最佳答案

防止 Sass 为选择器生成输出的唯一方法是将其包装在 if/else 语句中。无论是以每次手动写出 if/else 的形式,还是使用其中包含 if/else 的 @content mixin,结果都是一样的。

@if $critical
    .body-normal
        background-color: #fafafa
        color: #606060

关于html - SASS 的关键 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35150028/

相关文章:

javascript - Bootstrap 轮播在我的固定顶部导航上滚动

css - SASS 输出中带有制表符的缩进

HTML5 CSS3 模态窗口,点击外部关闭

PHP/MySQL : how to display the words before and after the searched item

html - 带有文本溢出的 CSS Flexbox 边框半径 : Ellipsis

javascript - 带有 cookie 的 CSS 主体类 jquery 切换器

jquery - 使用 CSS 或 jQuery 的垂直样式表

javascript - 这个 jQuery 验证可以重构吗?

html - OnMouseOver 图像在光标上显示文本

css - 在 React 中动态覆盖 Bootstrap CSS 变量?