Eu tenho uma página html com divs que têm id (s) do formulário s1 , s2 e assim por diante.
<div id="sections">
<div id="s1">...</div>
<div id="s2">...</div>
...
</div>
Eu quero aplicar uma propriedade css a um subconjunto dessas seções / divs (dependendo do id). No entanto, toda vez que adiciono uma div , tenho que adicionar o css para a seção separadamente dessa maneira.
//css
#s1{
...
}
Existe algo como expressões regulares em css que eu possa usar para aplicar estilo a um conjunto de divs .
class
atributo para identificar a classe de elementos com esses IDsRespostas:
Você pode gerenciar a seleção desses elementos sem nenhuma forma de regex, como mostram as respostas anteriores, mas para responder diretamente à pergunta, sim, você pode usar uma forma de regex nos seletores:
Dito isto, selecione qualquer elemento div dentro da #sections div que tenha um ID começando com a letra 's'.
Veja violino aqui .
O seletor de CSS do W3 documenta aqui .
fonte
Como complemento desta resposta, você pode usar
$
para obter as correspondências finais e*
obter correspondências em qualquer lugar do nome do valor.Jogos em qualquer lugar:
.col-md
,.left-col
,.col
,.tricolor
, etc.Jogos no início:
.col-md
,.col-sm-6
, etc.Corresponde à final:
.left-col
,.right-col
, etc.fonte
Um ID destina-se a identificar o elemento exclusivamente . Quaisquer estilos aplicados a ele também devem ser exclusivos para esse elemento. Se você possui estilos que deseja aplicar a muitos elementos, adicione uma classe a todos eles, em vez de confiar nos seletores de ID ...
e
Ou, no seu caso específico, você pode selecionar todas as divisões dentro do contêiner pai, se não houver mais nada dentro dele, da seguinte forma:
fonte
Primeiro de tudo, existem muitas, muitas maneiras de combinar itens em um documento HTML. Comece com esta referência para ver alguns dos seletores / padrões disponíveis que você pode usar para aplicar uma regra de estilo a um (s) elemento (s).
http://www.w3.org/TR/selectors/
Combine todos os
div
s que são descendentes diretos de#main
.Combine todos os
div
s que são descendentes diretos ou indiretos de#main
.Combine o primeiro,
div
que é um descendente direto de#sections
.Combine a
div
com um atributo específico.fonte
Você pode 'simplesmente adicionar uma classe a cada um dos seus DIVs e aplicar a regra à classe desta maneira:
HTML:
CSS:
fonte
.thepage #someid
mas apenas pode ficar muito tempo na tabela avançada ou no estilo de lista. Não era uma crítica de sua resposta tanto como ele foi o conselho geral expandindo sua resposta :-)Eu costumo usar
*
quando quero obter todas as seqüências que contêm os caracteres desejados.*
usado no regex, substitui todos os caracteres.Usado no SASS ou CSS seria algo parecido
[id*="s"]
e obterá todos os elementos DOM com o ID "s ......".fonte
Experimente minha expressão regular CSS genérica
Demo https://regexr.com/4a22i
fonte
existe outra maneira simples de selecionar elementos específicos em css também ...
se você tiver apenas alguns elementos para escolher e não quiser se preocupar com as aulas, isso também será fácil.
fonte