Mam następujący kod HTML na stronie:
<h4>Some text</h4>
<p>
Some more text!
</p>
W moim .css
mam następujący selektor do stylizacji h4
elementu. Powyższy kod HTML to tylko niewielka część całego kodu; jest jeszcze kilka div
s owiniętych wokół przynależności do shadowboxa:
#sb-wrapper #sb-wrapper-inner #sb-body #myDiv h4
{
color : #614E43;
margin-top : 5px;
margin-left : 6px;
}
Tak więc mam właściwy styl dla mojego h4
elementu, ale chcę również stylizować p
tag w moim HTML.
Czy jest to możliwe w przypadku selektorów CSS? A jeśli tak, jak mogę to zrobić?
html
css
css-selectors
Obrabować
źródło
źródło
h4
elementów, przejście do następnego rodzeństwa i dodanie do tego klasy CSS. Z jQuery byłoby to po prostu$('#sb-wrapper #sb-wrapper-inner #sb-body #myDiv h4').next().addClass('shadowbox-h4-p');
W swoim dosłownym przykładzie chciałbyś użyć sąsiedniego selektora (+).
Jeśli jednak chcesz zaznaczyć wszystkie kolejne akapity, musisz użyć ogólnego selektora rodzeństwa (~).
Niestety, IE 7+ zawiera błędy .
źródło
Po prostu uderz w to, próbując rozwiązać tego typu rzeczy samodzielnie.
Zrobiłem selektor, który zajmuje się elementem po tym, jak jest czymś innym niż p.
Mam nadzieję, że pomoże to każdemu, kto go znajdzie :)
źródło
*
dopasowań dowolnego elementu opisanego w tytule. Było dla mnie pomocnym przypomnieniem.Po prostu dla początkujących:
Jeśli chcesz wybrać element bezpośrednio po innym elemencie, użyj
+
selektora.Na przykład:
div + p
Element „+” wybiera wszystkie<p>
elementy, które są umieszczane bezpośrednio po<div>
elementachJeśli chcesz dowiedzieć się więcej o selektorach, skorzystaj z tej tabeli
źródło
Używam najnowszego CSS i "+" nie działa dla mnie, więc skończyłem
:pierworodny
źródło