CSS Выберите первый не-й, содержащий tr

0

Скажем, у меня есть таблица вроде этого:

Изображение 174551

(Красные строки <th> 's)

В CSS я хотел бы выбрать первую строку, которая не является строкой заголовка.

.tableClass td:first-child {}

Выбирает td 3:1 и td 4:1.

Но когда я пытаюсь:

.tableClass td:first-child tr:first-child {}

Ничего не выбрано.

Что мне здесь не хватает?

Примечание. Строки не содержат элементов <td> и <th>, всего один тип для каждой строки.

  • 0
    td для выбора столбца, вы должны использовать вместо этого tr
  • 0
    ты знаешь сколько их заранее? если нет - тогда я не думаю, что вы можете сделать это с помощью CSS
Теги:
css-selectors
css-tables

3 ответа

2

Как правило, структура таблицы подобна

<table>
<thead><tr><th>....</th>...</tr></thead>
<tbody><tr><td>..</td>....</tr></tbody>
</table>

поэтому легко найти основную часть таблицы

.tableClass tbody{
//code
}

Надеюсь, поможет

2

Я не уверен, что вы можете сделать это в чистом CSS. У вас есть контроль над HTML? Если строки заголовка всегда идут первыми (как на вашей диаграмме), тогда размещение строк заголовка внутри <thead> а остальные строки внутри <tbody> позволят вам выбрать первый <tr> внутри <tbody> с

.tableClass tbody tr:first-child {}

Ваш

.tableClass td:first-child tr:first-child {}

выбирает первую строку, которая находится внутри каждой ячейки первого ребенка, поэтому она ничего не находит.

0

Вы пробовали это: .tableClass tr:first-child td:first-child {}? Вы всегда должны идти сверху вниз при выборе элемента через CSS (так что таблица → строка таблицы → ячейка таблицы).

  • 0
    Это ничего не найдет в этом случае, так как строка первого ребенка не содержит td, только th. Совершенно верно о выборе сверху вниз, хотя

Ещё вопросы

Сообщество Overcoder
Наверх
Меню