CSS
Zapytania dotyczące funkcji
Szukaj…
Składnia
- @supports [warunek] {/ * Zasady CSS do zastosowania * /}
Parametry
Parametr | Detale |
---|---|
(property: value) | Sprawdza, czy przeglądarka może obsłużyć regułę CSS. Wymagany jest nawias wokół reguły. |
and | Zwraca wartość true tylko wtedy, gdy spełnione są zarówno poprzednie, jak i następne warunki. |
not | Neguje następny warunek |
or | Zwraca wartość true, jeśli spełniony jest warunek poprzedni lub następny. |
(...) | Warunki grupowe |
Uwagi
Wykrywanie funkcji za pomocą @supports
jest obsługiwane w Edge, Chrome, Firefox, Opera i Safari 9 i @supports
.
Podstawowe użycie @ obsługuje
@supports (display: flex) {
/* Flexbox is available, so use it */
.my-container {
display: flex;
}
}
Pod względem składni @supports
jest bardzo podobne do @media
, ale zamiast wykrywania rozmiaru ekranu i orientacji, @supports
wykryje, czy przeglądarka może obsłużyć daną regułę CSS.
Zamiast robić coś takiego jak @supports (flex)
, zwróć uwagę, że reguła to @supports (display: flex)
.
Wykrywanie funkcji łączenia
Aby wykryć wiele funkcji jednocześnie, użyj operatora and
.
@supports (transform: translateZ(1px)) and (transform-style: preserve-3d) and (perspective: 1px) {
/* Probably do some fancy 3d stuff here */
}
Istnieje również or
operator, a not
operator:
@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(...) */
}
Aby uzyskać najlepszą @supports
, spróbuj pogrupować wyrażenia logiczne w nawiasach:
@supports ((display: block) and (zoom: 1)) or ((display: flex) and (not (display: table-cell))) or (transform: translateX(1px)) {
/* ... */
}
Działa to, jeśli przeglądarka
- Obsługuje
display: block
ORAZzoom: 1
lub - Obsługuje
display: flex
AND NOTdisplay: table-cell
, lub - Obsługuje
transform: translateX(1px)
.
Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow