Feature Queries no CSS: O CSS é uma ferramenta poderosa para estilizar páginas da web, mas nem todos os navegadores suportam todas as propriedades e valores. Felizmente, as feature queries (também conhecidas como @supports ou supports()) nos permitem testar se um navegador suporta determinados recursos antes de aplicar estilos específicos.
Neste artigo, exploraremos o que são feature queries, como usá-las e como elas podem melhorar a flexibilidade e a compatibilidade dos nossos designs.
O que são Feature Queries?
As feature queries são regras condicionais que testam se o navegador suporta ou não determinadas funcionalidades do CSS. Elas nos permitem aplicar estilos com base no suporte a propriedades, valores ou até mesmo a combinação de ambos. Em outras palavras, podemos criar estilos que serão aplicados apenas se o navegador atender a certas condições.
Sintaxe das Feature Queries
As feature queries podem ser criadas usando o @supports at-rule ou a função supports() dentro de declarações @import. A sintaxe básica é a seguinte:
/* Usando o @supports at-rule */
@supports (condition) {
/* Estilos a serem aplicados se a condição for verdadeira */
}
/* Usando a função supports() dentro de @import */
@import url_to_import supports(condition);
Testando Propriedades e Valores
Podemos testar se um navegador suporta uma propriedade específica e/ou um valor usando feature queries. Por exemplo:
/* Verifica se o navegador suporta a propriedade "display: grid" */
@supports (display: grid) {
/* Aplica estilos para navegadores que suportam grids */
}
Testando Combinações de Propriedades
Também podemos testar combinações de propriedades. Por exemplo:
/* Verifica se o navegador suporta flexbox e a propriedade "gap" */
@supports (display: flex) and (gap: 1rem) {
/* Aplica estilos para navegadores que suportam flexbox e gap */
}
Testando Valores Específicos
Às vezes, queremos testar se um navegador suporta um valor específico de uma propriedade. Por exemplo:
/* Verifica se o navegador suporta a cor "rebeccapurple" */
@supports (color: rebeccapurple) {
/* Aplica estilos para navegadores que suportam essa cor */
}
Testando a Falta de Suporte
Além de verificar se um navegador suporta uma funcionalidade, podemos testar o oposto usando a palavra-chave not. Por exemplo:
/* Verifica se o navegador NÃO suporta a propriedade "display: grid" */
@supports not (display: grid) {
/* Aplica estilos alternativos para navegadores que não suportam grids */
}
Conclusão
Feature Queries no CSS: As feature queries são uma ferramenta valiosa para criar designs mais flexíveis e compatíveis. Elas nos permitem aplicar estilos de forma condicional, melhorando a experiência do usuário em diferentes navegadores. Experimente usar feature queries em seus projetos e aproveite os benefícios da compatibilidade aprimorada!
E para você validar seus códigos, você precisará de uma plataforma de host completa. Clique aqui e conheça a Hostinger, a hospedagem de sites com potência de verdade!!!