html - SASS:如何排除部分选择器

标签 html css sass

我正在为 IE7 创建 :before 伪元素的 polyfill:

.my-div:before,
.my-div .ie7-before {

}

我想添加一个标志,在需要时从生成的 CSS 文件中排除部分 .my-div .ie7-before。例如:

UPD.:这是我希望它的工作方式:

$ie-enabled: true;

// @if $ie-enabled SASS should generate

    .my-div:before,
    .my-div .ie7-before {
        color: red;
    }

// otherwise

    .my-div:before {
        color: red;
    }

有什么办法可以实现吗?

谢谢!

最佳答案

您需要一个变量来指示是否发出您的 ie7 样式。适当调整你的类名:

$ie7: false;

.my-div:before {
    background: #CCC;
}

@if $ie7 {
    .my-div .ie-7 {
        @extend .my-div:before;
    }
}

输出:

.my-div:before {
  background: #CCC;
}

$ie7: true 时,输出将是这样的:

.my-div:before, .my-div .ie-7 {
  background: #CCC;
}

关于html - SASS:如何排除部分选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15316065/

相关文章:

python - 如何在 python-django 中水平查看元素

css - 在 SCSS 中访问 div 的类

html - 如何使用具有相同顺序的 flexbox 创建照片网格

html - 什么是 <元字符集 ="utf-8">?

html - 如何让我的图像相对于左侧的动态 div 在中心垂直对齐?

javascript - 使用 jQuery 动态添加 onClick 事件

HTML 邮寄表单 : prefill subject and body

javascript - 将 div 更改为绝对位置时,它会跳转到原始位置

html - 缩放背景图像

reactjs - 有效使用 SASS/SCSS