使用Compass Mixin添加!重要
如果我使用指南针的CSS和使用一个函数或混入像:
@include background-image(linear-gradient(#a3cce0, #fff));
是否有任何简单的方法来指南针添加!重要的是它产生的每一行?
更新 :sass的新版本现在支持这种语法:
@include border-radius(5px !important);
只要这样做(如@naoufal答案中所述)。
—老答案—
你不能使用!重要的指南针混合,但罪魁祸首不是指南针,你应该责备这个。
@include border-radius(5px) !important; #=> SASS Syntax Error
你可以像这样在mixin中包含它:
@include border-radius(5px !important);
罗盘将输出以下内容:
-webkit-border-radius: 5px !important; -moz-border-radius: 5px !important; -ms-border-radius: 5px !important; -o-border-radius: 5px !important; border-radius: 5px !important;
我上次遇到了这个问题,我用一个更强的select器来压制罗盘的风格。 我只是在我的HTML元素上添加了一个ID
span { @include border-radius(5px);} span#no-radius { @include border-radius(0px); } // override
这个问题出现在我的search类似的问题,这是现货,但我只是想补充一点, 使用可选参数做一个萨斯混合是另一种可能的方法,我觉得有用。
在需要的时候用important
replaceinset
和important
!important
花了几个小时弄清楚这一点,但有一个快速的技巧,你可以做的。 在SASS文件的顶部添加以下内容:
$i: unquote("!Important");
在你的风格做以下几点:
color: #CCCCCC $i;
输出是:
color: #CCCCCC !Important;
全样本:
$i: unquote("!Important"); .some-style { color: white $i; }
输出:
.some-style { color: white !Important; }