CSS
Consultas de características
Buscar..
Sintaxis
- @supports [condición] {/ * reglas CSS para aplicar * /}
Parámetros
Parámetro | Detalles |
---|---|
(property: value) | Evalúa verdadero si el navegador puede manejar la regla CSS. Se requieren los paréntesis alrededor de la regla. |
and | Devuelve verdadero solo si las condiciones anteriores y siguientes son verdaderas. |
not | Niega la siguiente condición. |
or | Devuelve verdadero si la condición anterior o siguiente es verdadera. |
(...) | Condiciones de los grupos |
Observaciones
La detección de @supports
mediante @supports
se admite en Edge, Chrome, Firefox, Opera y Safari 9 y superiores.
Uso básico de los soportes
@supports (display: flex) {
/* Flexbox is available, so use it */
.my-container {
display: flex;
}
}
En términos de sintaxis, @supports
es muy similar a @media
, pero en lugar de detectar el tamaño y la orientación de la pantalla, @supports
detectará si el navegador puede manejar una regla CSS determinada.
En lugar de hacer algo como @supports (flex)
, observe que la regla es @supports (display: flex)
.
Encadenamiento de detecciones de características.
Para detectar múltiples funciones a la vez, use el operador and
.
@supports (transform: translateZ(1px)) and (transform-style: preserve-3d) and (perspective: 1px) {
/* Probably do some fancy 3d stuff here */
}
También hay un operador or
not
y un operador:
@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(...) */
}
Para la mejor experiencia de @supports
, intente agrupar expresiones lógicas con paréntesis:
@supports ((display: block) and (zoom: 1)) or ((display: flex) and (not (display: table-cell))) or (transform: translateX(1px)) {
/* ... */
}
Esto funcionará si el navegador
-
display: block
soportesdisplay: block
Yzoom: 1
, o -
display: flex
Y NOdisplay: table-cell
, o - Soporta la
transform: translateX(1px)
.
Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow