javascript - 如何检查 CSS 和 Javascript 是否支持 CSS @layer?

标签 javascript css browser-feature-detection css-layer

所以我知道@supportCSS.supports可以用来检查某些功能是否可用,但我无论如何都无法让它检测 CSS @layer 是否可用是否可用。我 100% 确定我的浏览器支持它,但以下检查均返回 false:

console.log(CSS.supports("@layer"))
console.log(CSS.supports("@layer a;"))
console.log(CSS.supports("@layer a {  }"))
console.log(CSS.supports("layer"))
console.log(CSS.supports("layer: 1"))
console.log(CSS.supports("layer", 1))
p {
  color: rebeccapurple;
}

@layer type {
  .box p {
    font-weight: bold;
    font-size: 1.3em;
    color: green;
  }
}
<div class="box">
  <p>Hello, world!</p>
</div>

上面的文本对我来说显示为紫色,所以我知道@layer可以工作并且DevTools的CSS Layer按钮会显示。然而所有测试都是错误

此检查的正确提示是什么?

最佳答案

一种方法可能是测试 CSSOM 是否存在其中一种图层规则类型。例如

console.log(typeof CSSLayerBlockRule === 'function')

关于javascript - 如何检查 CSS 和 Javascript 是否支持 CSS @layer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/77657720/

相关文章:

html - 如何在每个部分倾斜不同颜色的背景

javascript - SharePoint 2013 更新列表项时保存冲突错误

javascript - 未调用 WebRTC ontrack

css - Scss mixin 函数变量作用域

javascript - 我如何以编程方式检测浏览器如何处理 window.close()?

javascript - 检测 iOS 是否正在使用 webapp

javascript - 通过 HTML 文件输入删除文件的功能检测

javascript - 在使用 Angular JS 进行模板化时使用辅助方法

javascript - 如何获取php到ajax的返回值

css - 为什么我网站的页眉在 IE 中的底部边距特别大?