@supports css 计算功能
@supports css calc function
有没有办法使用calc function in @supports(propertyName, value)?我的意思是 <supports_condition>
仅用于计算功能。
@supports ( <supports_condition> ) {
.col-3 {
width: calc(25% - 20px/4)
}
.col-4 {
width: calc(33.3333333% - 20px/3)
}
.col-6 {
width: calc(50% - 20px/2)
}
}
您可以查看 calc
条件是否适用于 @support
条件,如果适用,请告诉它执行您真正想要的操作。所以像这样:JS Fiddle
@supports (width: calc(100% - 80em)) {
div {
width: calc(100% - 3em);
}
}
有关 Mozilla 的文档,请参阅 This line。
支持 @supports
is far, far more restricted than calc()
因为后者是几年前引入的(最值得注意的是,IE 根本不支持 @supports
,而它从版本 9 开始支持 calc()
几乎恰好在 4 年前问世)。如果将它们一起使用,每个支持 @supports
的浏览器都会匹配该规则,而任何支持 calc()
但不支持 @supports
的浏览器都会忽略该规则。换句话说,如果你要一起使用它们,你会 减少 可以使用 calc()
函数的浏览器的数量,方法是阻止其中一些浏览器看到你的声明.
幸运的是,由于 calc()
是一个值,代替了尚未存在的 @supports
作者可以通过为 calc()
提供后备声明来简单地利用级联不支持:
width: 95px;
width: calc(25% - 20px/4);
有没有办法使用calc function in @supports(propertyName, value)?我的意思是 <supports_condition>
仅用于计算功能。
@supports ( <supports_condition> ) {
.col-3 {
width: calc(25% - 20px/4)
}
.col-4 {
width: calc(33.3333333% - 20px/3)
}
.col-6 {
width: calc(50% - 20px/2)
}
}
您可以查看 calc
条件是否适用于 @support
条件,如果适用,请告诉它执行您真正想要的操作。所以像这样:JS Fiddle
@supports (width: calc(100% - 80em)) {
div {
width: calc(100% - 3em);
}
}
有关 Mozilla 的文档,请参阅 This line。
支持 @supports
is far, far more restricted than calc()
因为后者是几年前引入的(最值得注意的是,IE 根本不支持 @supports
,而它从版本 9 开始支持 calc()
几乎恰好在 4 年前问世)。如果将它们一起使用,每个支持 @supports
的浏览器都会匹配该规则,而任何支持 calc()
但不支持 @supports
的浏览器都会忽略该规则。换句话说,如果你要一起使用它们,你会 减少 可以使用 calc()
函数的浏览器的数量,方法是阻止其中一些浏览器看到你的声明.
幸运的是,由于 calc()
是一个值,代替了尚未存在的 @supports
作者可以通过为 calc()
提供后备声明来简单地利用级联不支持:
width: 95px;
width: calc(25% - 20px/4);