So I know that @support and CSS.supports can be used to check if certain features is available but I cannot in anyway make it works to detect if CSS @layer is available or not. I am 100% sure my browser supports it but the following checks all return 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>
The above text shows as purple for me so I know @layer works and DevTools' CSS Layer button shows up. However all the tests are false.
What is the correct prompt for this check?
One way might be to test the CSSOM for the presence of one of the Layer Rule types. So for example