.
О терминологии селекторов
Термин «селектор» может относиться к простому селектору, составному селектору, сложному селектору или списку селекторов.
Простой селектор (<simple-selector>
) - это отдельное условие для
элемента. Селектор типа, универсальный селектор, селектор атрибутов, селектор класса, селектор
идентификатора или псевдокласс - это простой селектор.
Составной селектор (<compound-selector>
) - это последовательность
простых селекторов, не разделенных комбинатором, и представляет собой набор одновременных условий для
одного элемента. Если он содержит селектор типа или универсальный селектор, этот селектор должен быть
первым в последовательности. В последовательности разрешен только один селектор типа или универсальный
селектор. Считается, что данный элемент соответствует составному селектору, если он соответствует всем
простым селекторам в составном селекторе.
Комбинатор - это условие взаимосвязи между двумя составными селекторами. Комбинаторы в селекторах уровня 4 включают: комбинатор потомков (пробел), комбинатор прямых потомков потомков (U+003E, >), комбинатор следующего элемента (U+002B, +) и комбинатор последующих элементов (U + 007E, ~). Говорят, что два заданных элемента соответствуют комбинатору, если условие взаимосвязи между этими элементами истинно.
Сложный селектор - это последовательность из одного или нескольких составных селекторов,
разделенных комбинаторами. Он представляет собой набор одновременных условий для набора элементов в
определенных отношениях, описываемых его комбинаторами. Сложные селекторы представлены
<complex-selector>
в грамматике селекторов. Считается, что данный элемент
соответствует сложному селектору, когда существует список элементов, каждый из которых соответствует
соответствующему составному селектору в сложном селекторе, с каждой парой последовательные элементы в
списке, соответствующих комбинатору между соответствующими составными селекторами, причем последний
элемент является данным элементом.
Список селекторов - это список простых, составных или сложных селекторов, разделенных запятыми. Это также называется просто списком селекторов, когда тип не важен или указан в окружающем тексте; если тип важен и не указан, по умолчанию используется список сложных селекторов. Списки селекторов представоены <* - selector-list> в грамматике. Считается, что данный элемент соответствует списку селекторов, если он соответствует любому (по крайней мере, одному) селекторов в этом списке селекторов.