Rozumiem, że używanie element.class
powinno pozwolić, aby określony element przypisany do klasy otrzymał inny „styl” niż reszta klasy. Nie chodzi o to, czy należy tego używać, czy nie, ale raczej próbuję zrozumieć, jak ten selektor ma działać. Patrząc na mnóstwo przykładów w Internecie, uważam, że składnia jest poprawna i nie rozumiem, dlaczego to nie działa.
Oto przykład:
CSS:
h2 {
color: red;
}
.myClass {
color: green;
}
h2.myClass {
color: blue;
}
HTML:
<h2>This header should be RED to match the h2 element selector</h2>
<div class="myClass">
<h1>This header should be GREEN to match the class selector</h1>
<h2>This header should be BLUE to match the element.class selector</h2>
</div>
html
css
syntax
css-selectors
Carolyn
źródło
źródło
Odpowiedzi:
Tak powinno być:
h2.myClass
szuka h2 z klasąmyClass
. Ale tak naprawdę chcesz zastosować styl dla h2 wewnątrz,.myClass
więc możesz użyć selektora potomków.myClass h2
.h2 { color: red; } .myClass { color: green; } .myClass h2 { color: blue; }
Próbny
Ten odnośnik da Ci podstawowe pojęcie o selektorach i przyjrzy się selektorom potomnym
źródło
h2.myClass
odnosi się do wszystkichh2
zclass="myClass"
..myClass h2
odnosi się do wszystkich elementówh2
potomnych (tj. zagnieżdżonych) elementów zclass="myClass"
.Jeśli chcesz, aby
h2
w kodzie HTML był niebieski, zmień CSS na następujący:.myClass h2 { color: blue; }
Jeśli chcesz mieć możliwość odniesienia się do tego
h2
przez klasę, a nie jej znacznik, powinieneś pozostawić CSS bez zmian i podaćh2
klasę a w HTML:<h2 class="myClass">This header should be BLUE to match the element.class selector</h2>
źródło
Selektor element.class służy do stylizacji w takich sytuacjach:
<span class="large"> </span> <p class="large"> </p> .large { font-size:150%; font-weight:bold; } p.large { color:blue; }
Zarówno twoja rozpiętość, jak i p będą miały przypisany rozmiar i grubość czcionki od .large, ale kolor niebieski zostanie przypisany tylko do p.
Jak zauważyli inni, to, z czym pracujesz, to selektory potomków.
źródło
h2.myClass
obowiązuje tylko dlah2
elementów, do którychmyClass
bezpośrednio przypisano klasę .Chcesz to zanotować w ten sposób:
.myClass h2
Która wybiera wszystkie elementy podrzędne,
myClass
które mają zmiennąh2
źródło
:first-child
Selektor CSS pozwala wskazać element, który jest pierwszym elementem podrzędnym w swoim rodzicu.element:first-child { style_properties } table:first-child { style_properties }
źródło