--- title: '@supports' slug: Web/CSS/@supports translation_of: Web/CSS/@supports ---
{{ CSSRef() }}
@supports
CSS at-rule zawiera grupę reguł w bloku CSS zamkniętych w klamrowych nawiasach. Składa się z deklaracji CSS (klucz-para). Do wykorzstania mamy także warunkowość zdań: koniunkcję, alternatywę oraz negację. Powyższa reguła daje nam możliwość wykrycia dostępności danej reguły.
Istnieje możliwość użycia tej reguły na zewnątrz CSS conditional-group at-rule, uzyskując tym samym dostęp do kontrolowania jej przy użyciu obiektowego modelu interfejsu CSS {{domxref("CSSSupportsRule")}}.
@supports <wyrażenie> { /* reguły, które zostaną zaaplikowane w przypadku gdy wyrażenie jest prawdziwe */ }
@supports (animation-name: test) { … /* reguły aplikowane gdy właściwość "animation-name" jest dostepna bez tzw. vendor prefixes, np. "-webkit-animation" */ @keyframes { /* przykład użycia @supports na zewnątrz innej reguły @ */ … } }
@supports ( (perspective: 10px) or (-moz-perspective: 10px) or (-webkit-perspective: 10px) or (-ms-perspective: 10px) or (-o-perspective: 10px) ) { … /* reguły aplikowane są dostępne, niezależnie czy przeglądarka obsługuje wersja z przedrostkami czy bez */ }
@supports ( not ((text-align-last:justify) or (-moz-text-align-last:justify) ){ /* aplikowane reguły, jeśli powyższe wyrażenie jest prawdziwe */ }
Specyfikacja | Status | Komentarz |
---|---|---|
{{ SpecName('CSS3 Conditional', '#at-supports', '@supports') }} | {{ Spec2('CSS3 Conditional') }} | Initial definition. |
{{ CompatibilityTable() }}
Cecha | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Podstawowe wsparcie | 28.0 | {{ CompatGeckoDesktop("22") }} [1] | {{ CompatNo() }} | 12.1 | {{ CompatNo() }} |
Cecha | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Podstawowe wsparcie | {{ CompatNo() }} | {{ CompatGeckoMobile("22") }} [1] | {{ CompatNo() }} | 12.1 | {{ CompatNo() }} |
[1] Gecko 17 do Gecko 21 wspierał tą cechę tylko gdy użytkownik włączył ją ustawiając wartość layout.css.supports-rule.enabled
na true
.