链接功能检测

要一次检测多个功能,请使用 and 运算符。

@supports (transform: translateZ(1px)) and (transform-style: preserve-3d) and (perspective: 1px) {
  /* Probably do some fancy 3d stuff here */
}

还有一个 or 运算符和一个 not 运算符:

@supports (display: flex) or (display: table-cell) {
  /* Will be used if the browser supports flexbox or display: table-cell */
}
@supports not (-webkit-transform: translate(0, 0, 0)) {
  /* Will *not* be used if the browser supports -webkit-transform: translate(...) */
}

要获得最终的 @supports 体验,请尝试使用括号对逻辑表达式进行分组:

@supports ((display: block) and (zoom: 1)) or ((display: flex) and (not (display: table-cell))) or (transform: translateX(1px)) {
  /* ... */
}

这将适用于浏览器

  1. 支持 display: blockzoom: 1,或
  2. 支持 display: flex 而不是 display: table-cell,或
  3. 支持 transform: translateX(1px)