Я понимаю, что использование element.class
должно позволять конкретному элементу, назначенному классу, получать другой «стиль», чем остальная часть класса. Вопрос не в том, следует это использовать или нет, я скорее пытаюсь понять, как этот селектор должен работать. Глядя на массу примеров в Интернете, я считаю, что синтаксис правильный, и не понимаю, почему это не работает.
Вот пример:
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
Кэролайн
источник
источник
Ответы:
Должно быть так:
h2.myClass
ищет h2 с классомmyClass
. Но на самом деле вы хотите применить стиль для h2 внутри,.myClass
чтобы вы могли использовать селектор потомков.myClass h2
.h2 { color: red; } .myClass { color: green; } .myClass h2 { color: blue; }
Демо
Эта ссылка даст вам общее представление о селекторах и взглянет на селекторы потомков.
источник
h2.myClass
относится ко всемh2
сclass="myClass"
..myClass h2
относится ко всемh2
дочерним элементам (т.е. вложенным в) сclass="myClass"
.Если вы хотите, чтобы
h2
в вашем HTML-коде отображался синий цвет, измените CSS на следующее:.myClass h2 { color: blue; }
Если вы хотите иметь возможность ссылаться на это
h2
с помощью класса, а не его тега, вы должны оставить CSS как есть и указатьh2
класс в HTML:<h2 class="myClass">This header should be BLUE to match the element.class selector</h2>
источник
Селектор element.class предназначен для стилизации таких ситуаций:
<span class="large"> </span> <p class="large"> </p> .large { font-size:150%; font-weight:bold; } p.large { color:blue; }
И вашему span, и p будут назначены размер шрифта и font-weight из .large, но синий цвет будет назначен только p.
Как отмечали другие, вы работаете с селекторами потомков.
источник
h2.myClass
действительно только дляh2
элементов, которые получили классmyClass
напрямую.Вы хотите отметить это так:
.myClass h2
Которая выбирает все дочерние элементы, у
myClass
которых есть тэгh2
источник
:first-child
Селектор CSS позволяет вам выбрать элемент, который является первым дочерним элементом в своем родительском элементе.element:first-child { style_properties } table:first-child { style_properties }
источник