Kurolesov
@Kurolesov
Начинающий девелопер

Как получить всех потомков брата?

Добрый день.
Подскажите, можно ли с помощью комбинаторов CSS задать стили для всех потомков элемента, следующего за текущим?
Например, есть такой код
<div>div1</div>
<div>div2
    <div>div21</div>
    <div>div22</div>
    <div>div23</div>
</div>

Как задать правило используя комбинатор с div1, чтобы свойства применились к div21, div22 и div23?
  • Вопрос задан
  • 85 просмотров
Решения вопроса 3
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
В CSS нет понятия "текущий элемент". Всё указывается только с помощью селекторов.
<div id='main'>div1</div>
<div>div2
    <div>div21</div>
    <div>div22</div>
    <div>div23</div>
</div>

#main + div > div { ... }
Ответ написан
Комментировать
или так правильнее
<div id='main'>div1</div>
<div>div2
    <div>div21</div>
    <div><span>div22</span></div>
    <i>div23</i>
</div>


#main + div  * { ... }
Ответ написан
Ankhena
@Ankhena Куратор тега CSS
Нежно люблю верстку
div + div > div { 
ваши стили
}

Но в такую конструкцию попадут и другие подобные ситуации. Например, если у внутренних div'ов тоже будут дети.

Так что правильнее задать первому блоку класс (не id)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы