James Moro
Iniciei minha vida profissional como desenvolvedor web em 2008. Tenho um canal no Youtube onde publico vídeos sobre tecnologia.
Utilizamos cookies para ajudar você a navegar com eficiência e executar certas funções. Você encontrará informações detalhadas sobre todos os cookies sob cada categoria de consentimento abaixo.
Os cookies que são classificados com a marcação “Necessário” são armazenados em seu navegador, pois são essenciais para possibilitar o uso de funcionalidades básicas do site....
Os cookies necessários são cruciais para as funções básicas do site e o site não funcionará como pretendido sem eles. Esses cookies não armazenam nenhum dado pessoalmente identificável.
Cookies funcionais ajudam a executar certas funcionalidades, como compartilhar o conteúdo do site em plataformas de mídia social, coletar feedbacks e outros recursos de terceiros.
Cookies analíticos são usados para entender como os visitantes interagem com o site. Esses cookies ajudam a fornecer informações sobre métricas o número de visitantes, taxa de rejeição, fonte de tráfego, etc.
Os cookies de desempenho são usados para entender e analisar os principais índices de desempenho do site, o que ajuda a oferecer uma melhor experiência do usuário para os visitantes.
Os cookies de anúncios são usados para entregar aos visitantes anúncios personalizados com base nas páginas que visitaram antes e analisar a eficácia da campanha publicitária.
O melhor da tecnologia está no nosso canal no WhatsApp
O seletor :has
é um pseudo-seletor CSS que permite selecionar elementos com base em seus descendentes diretos que correspondem a um determinado seletor. Ele foi proposto como parte do Nível 4 do CSS Selectors, mas ainda não é amplamente suportado por todos os navegadores.
O seletor :has
é útil quando você deseja selecionar um elemento pai que contém um elemento filho específico. Ele permite que você selecione elementos com base em sua estrutura hierárquica, em vez de depender apenas de suas classes, IDs ou outros atributos.
A sintaxe básica do seletor :has
é a seguinte:
elemento-pai:has(seletor-filho) { | |
/* estilos aplicados ao elemento-pai */ | |
} |
Por exemplo, se você tiver a seguinte estrutura HTML:
<div class="pai"> | |
<span>Texto 1</span> | |
<span>Texto 2</span> | |
</div> | |
<div class="pai"> | |
<span>Texto 3</span> | |
<span>Texto 4</span> | |
</div> |
Você pode usar o seletor :has
para selecionar apenas os elementos <div>
que contêm um <span>
com o texto “Texto 2”:
div:has(span:contains("Texto 2")) { | |
/* estilos aplicados aos divs que contêm o span com "Texto 2" */ | |
} |
No exemplo acima, somente o primeiro <div class="pai">
será selecionado, pois é o único que contém o <span>
com o texto “Texto 2”.
É importante observar que o suporte ao seletor :has
varia entre os navegadores e pode não funcionar em todos eles. Portanto, é recomendável verificar a compatibilidade antes de usá-lo em um projeto.
Embora o seletor :has seja uma adição útil ao conjunto de recursos do CSS, é importante observar que seu suporte ainda é limitado em alguns navegadores. No momento, apenas alguns navegadores modernos, como Firefox e jQuery, oferecem suporte ao seletor :has. Portanto, ao usá-lo, é necessário considerar a compatibilidade dos navegadores e fornecer soluções alternativas ou degradação graciosa, se necessário, para garantir a funcionalidade adequada em diferentes ambientes.
O seletor CSS :has é um recurso poderoso que permite selecionar elementos pai com base em seus descendentes diretos correspondentes. Com sua sintaxe simples e flexível, é possível aplicar estilos específicos apenas aos elementos desejados, com base em sua estrutura hierárquica. Embora o suporte ao seletor :has possa ser limitado em alguns navegadores, ele ainda oferece um grande potencial para aprimorar a estilização e manipulação de elementos em páginas da web.
Ao utilizar o seletor :has com sabedoria e considerando a compatibilidade dos navegadores, os desenvolvedores podem explorar todo o poder do CSS e alcançar resultados surpreendentes em seus projetos.
Iniciei minha vida profissional como desenvolvedor web em 2008. Tenho um canal no Youtube onde publico vídeos sobre tecnologia.