Ответ 1
#many .more.selectors h4 + p { ... }
Это называется соседний селектор для сиблинга.
У меня есть следующий HTML-код на странице
<h4>Some text</h4>
<p>
Some more text!
</p>
В моем css у меня есть следующий селектор для стилирования элемента H4. HTML-код, приведенный выше, является лишь небольшой частью всего кода, есть несколько div, более обернутых вокруг теневого блока.
#sb-wrapper #sb-wrapper-inner #sb-body #myDiv h4
{
color : #614E43;
margin-top : 5px;
margin-left : 6px;
}
Итак, у меня есть правильный стиль для моего элемента H4, но я также хочу подстроить тег абзаца в своем HTML. Возможно ли это с помощью CSS-селекторов? И если да, как я могу это сделать?
#many .more.selectors h4 + p { ... }
Это называется соседний селектор для сиблинга.
Для вашего буквального примера вы хотите использовать смежный селектор (+).
h4 + p {color:red}//any <p> that is immediately preceded by an <h4>
<h4>Some text</h4>
<p>I'm red</p>
<p>I'm not</p>
Однако, если вы хотите выбрать все последующие параграфы, вам нужно будет использовать общий селектор (~).
h4 ~ p {color:red}//any <p> that has the same parent as, and comes after an <h4>
<h4>Some text</h4>
<p>I'm red</p>
<p>I am too</p>
Просто надавите на это, пытаясь решить эту проблему самостоятельно.
Я сделал селектор, который имеет дело с элементом, будучи чем-то иным, чем p.
.here .is.the #selector h4 + * {...}
Надеюсь, это поможет любому, кто его найдет:)