Почему таблица> tr> td не работает при использовании дочернего селектора? - PullRequest
36 голосов
/ 06 апреля 2011

Я не могу понять, почему следующий селектор работает, как ожидалось (то есть, получить td):

table tr td

но это не так:

table > tr > td

td является потомком tr, который, в свою очередь, является потомком table, но они также являются потомками друг друга. Поэтому я подумал, что селектор > тоже будет работать.

Я сделал две скрипки:

  1. Ребенок: http://jsfiddle.net/brLee/
  2. Потомок: http://jsfiddle.net/brLee/1/

Почему здесь не работает селектор >?

Ответы [ 2 ]

78 голосов
/ 06 апреля 2011

В HTML браузеры неявно добавляют элемент tbody, внутри которого содержатся элементы tr 1 , поэтому в действительности tr никогда не является потомком table.

Следовательно, вы должны сделать это вместо:

table > tbody > tr > td

Конечно, если вы добавляете элемент tbody самостоятельно, вы используете тот же селектор. spec объясняет, когда tbody добавляется неявно, в противном случае:

Пропуск метки

Начальный тег элемента tbody может быть опущен, если первым элементом в элементе tbody является элемент tr, и если элементу непосредственно не предшествует элемент tbody thead или tfoot, конечный тег был опущен.


1 Это не относится к документам XHTML, которые правильно обрабатываются как application/xhtml+xml, однако , учитывая его корни XML .

1 голос
/ 29 января 2015

Если вы хотите быть более католическим, чем папа :) вот что я сделал (потому что ничего из вышеперечисленного не помогло мне):

1) Создайте класс CSS, назначьте его свойству GridView (например:

<PagerStyle CssClass="pagerNoBorder" /> 

)

2) Определите свой класс CSS так же, как номера страниц отображаются вашим браузером (проверьте элемент в браузере и найдите все дочерние селекторы!). В моем случае это была ситуация:

.pagerNoBorder > td > table > tbody > tr > td
    {
        border-width:0px !important;
        border-style:none;
    }

Если вы собираетесь сказать, почему границы ширины (+! Важно) и границы стиля одновременно, прочтите еще раз введение моего ответа :). Ура и хорошего дня!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...