5

Что означает селектор CSS ">" (знак больше)?

315

Заголовок: Что означает символ ">" в CSS-правилах?

Вопрос:

Я столкнулся с фрагментом CSS-кода, который выглядит так:

div > p.some_class {
  /* Некоторые декларации */
}

Не могу понять, что именно обозначает символ > в данном контексте. Как он влияет на стиль, применяемый к элементам? Заранее благодарен за объяснение!

5 ответ(ов)

0

Чтобы выбрать все теги <p> с классом some_class, которые являются непосредственными дочерними элементами тега <div>, вы можете использовать следующий селектор CSS:

div > p.some_class {
    /* ваши стили */
}

Здесь div указывает на тег <div>, > обозначает, что <p> должен быть непосредственным потомком <div>, а p.some_class указывает на селектор для тега <p> с классом some_class. Таким образом, данный селектор будет применять стили только к <p> элементам, которые напрямую находятся внутри <div>.

0

Как уже упоминали другие, это селектор потомка. Вот подходящая ссылка:

http://www.w3.org/TR/CSS2/selector.html#child-selectors

0

Селектор соответствует элементам p с классом some_class, которые находятся непосредственно под элементом div.

0

Ваш код CSS:

div > p.some_class {
  color: red;
}

применяет стиль к элементам <p> с классом .some_class, которые являются прямыми дочерними элементами <div>.

В вашем HTML:

<html>
  <div>
    <p class="some_class">lohrem text (it will be of red color)</p>
    <div>
      <p class="some_class">lohrem text (it will NOT be of red color)</p>
    </div>
    <p class="some_class">lohrem text (it will be of red color)</p>
  </div>
</html>

Первый и последний абзацы <p> с классом .some_class являются прямыми потомками родительского <div>, поэтому они будут окрашены в красный цвет. Однако второй <p> внутри вложенного <div> не соответствует селектору, так как он не является прямым потомком первого <div>, и, следовательно, не будет окрашен в красный цвет.

Таким образом, тот стиль, который вы указали, применится только к тем элементам <p>, которые находятся непосредственно внутри соответствующего <div>, игнорируя вложенные структуры.

0

В CSS селектор сGreater sign ( > ) указывает на то, что селектор справа является прямым потомком (дочерним элементом) того, что находится слева.

Пример:

article > p { }

Это значит, что стили будут применяться только к абзацам, которые непосредственно следуют за элементами article. Таким образом, если p находится внутри другого элемента, который в свою очередь находится внутри article, то стили не будут применены.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь