2016-06-02 3 views
1

Элемент выбора типа потомка работы:Выбор Потомок на основе классов

form * div {...} 

, но я считаю, что использование классов не делает:

.my-class1 * .my-class2 {...} 

И.Э. Я ожидаю, что несколько элементов будут выбраны в форме выбора класса «потомки», но ни один из них не будет выбран.

На моей странице у меня есть две очень похожие подструктуры DOM, созданные сторонним кодом, которые нуждаются в различном стиле, и я не хочу, чтобы мой CSS полагался на эту структуру DOM третьей стороны.

Каков наилучший способ создания этих двух частей DOM?

+0

Нет причин, по которым '.my-class1 * .my-class2' не должен работать - оба селектора одинаково действительны, как и следовало ожидать. Проблема в другом месте. – BoltClock

ответ

2

Вы можете использовать .my-class1 > .my-class2 для прямых потомков.

Или вы можете использовать .my-class1 .my-class2 для любого .my-class2, который является потомком .my-class1.

+1

Жестокий! Похоже, что 'form * div' является длинной версией' form div'? Или это относится только к классам/ids? –

+2

это базовый CSS. вам следует избегать использования подстановочного символа '*', поэтому этот 'form * div' или этот' form div' делает то же самое – dippas

+1

'*' означает * любой элемент *, поэтому конкретная строка, на которую вы ссылаетесь, выбирает все 'my -class2', который находится под любым другим элементом, и этот элемент находится под 'my-class1'. Я согласен с @dippas, что использование '*' немного вонючее. – Chris

Смежные вопросы