Почему в книге Professional ASP.NET 4.5 на C# и VB определение смежного селектора CSS не соответствует примеру?

В главе 2: HTML5 и CSS3 книги, Professional ASP.NET 4.5 в C# и VB Джейсона Н. Гейлорда, Кристиана Венца и Пранава Растоги, смежный селектор В разделе говорится: «Смежные селекторы позволяют выбирать элементы HTML, которые непосредственно примыкают к другому типу элемента».

В этом разделе приведен пример необходимости иметь разный цвет для каждого li после первого li в неупорядоченном (ol) списке.

Their CSS is below(Note: I added html so you can see the result):

li
{
  color: maroon;
  }
li+li{
  color: silver;
  }
<ol>
  <li>one</li>
  <li>two</li>
  <li>three</li>
  <li>four</li>
  <li>five</li>
  </ol>

Поиск Google определяет соседний как «рядом с чем-то другим или примыкающим к нему».

Это будет означать, что будет выбран первый элемент.

Почему это не так? Кажется, это неоднозначный раздел в главе 2.


person IEnjoyEatingVegetables    schedule 11.08.2016    source источник


Ответы (1)


Похоже, этот раздел стал жертвой двусмысленности.

w3.org очищает это в своей таблице селекторов (раздел 2.), определенной здесь, они говорят: «E + F — элемент F, которому непосредственно предшествует элемент E».

Это определение доказывает, что слово «примыкающий» относится только к следующему элементу, а не к ведущему элементу, и объясняет, почему первый элемент вашего списка не является серебром.

person IEnjoyEatingVegetables    schedule 11.08.2016