Подтвердить что ты не робот

Справка с ошибкой проверки HTML: столбец столбца не имеет в нем ячеек

Пожалуйста, помогите мне с этой ошибкой проверки. Я не могу понять, что это значит или что не стандартная жалоба с моим HTML.

Я отправлю его здесь, так как надеюсь, что я исправлю его, и эта ссылка больше не будет работать:

Столбец таблицы 2, установленный элементом td, не имеет в нем ячеек.

…="tooltip_table"><tr><td colspan="2">20 yd range</td></tr><tr><td colspan="2"
                                     ↑
4b9b3361

Ответ 1

HTML 5.2 Проект: Раздел 4.9.12.1 Формирование таблицы

http://w3c.github.io/html/tabular-data.html#forming-a-table

Шаг 22: Если в таблице есть строка или стол, содержащий только слоты, которые не привязаны к ячейке, то это ошибка модели таблицы.

Ответ 2

Когда вы говорите colspan="2", столбец должен растягиваться на два столбца. Мое предположение было бы в том, что нет второго столбца, определенного где-либо еще в умелом, поэтому сделать colspan="2" невозможно (и не нужно).

Я не могу найти что-либо в spec, явно заявив, что это незаконно. Возможно, алгоритм вычисления таблицы, указанный в этой спецификации, отличается от 4.01, но слишком поздно в моем часовом поясе, чтобы попытаться обойти это:)

Однако, я считаю, что сообщение об ошибке делает слишком совершенным смысл, чтобы быть прямой ошибкой.

Столбец таблицы 2, установленный элементом td, не имеет в нем ячеек.

Используя colspan="2", вы подразумеваете существование второго столбца, которого в этом случае не существует. Здравый смысл подсказывает мне, что правильно прогнать.

Может кто-то может пролить свет на это... Или это, действительно, ошибка.

Ответ 3

Я считаю, что это ошибка, и все еще нефиксирована. Рассмотрим эту страницу примера и запустите ее через валидатор W3C. Он дает ошибки для "Столбец таблицы 3, установленный элементом td, не содержит в нем ячеек". И все же каждая таблица имеет 4 ячейки/столбцы, а "вторая колонка" из 2 вызывается во второй ячейке.

Ответ 4

Похож на проблему с валидатором HTML5. Эта ошибка не возникает, если вы проверяете ее с помощью HTML 4.01 Transitional, а таблица html не так сильно изменилась в html5.

http://validator.w3.org/check?uri=http://www.wowpanda.net/s9712&charset=(detect+automatically)&doctype=HTML+4.01+Transitional&ss=1&outline=1&group=0&verbose=1&user-agent=W3C_Validator/1.654

Отчетность, вероятно, хорошая идея

Ответ 5

У меня была такая же ошибка в динамически созданной таблице. В зависимости от ввода некоторые строки были отображены или нет. Вот так:

Не вызывает ошибок:

<table>
<tr>
<td> cell 1 in row 1 </td>
<td> cell 2 in row 1 </td>
</tr>
<tr>
<td colspan=2> one cell in row 2 </td>
</tr>
</table>

Не вызывает ошибок:

<table>
<tr>
<td> cell 1 in row 1 </td>
<td> cell 2 in row 1 </td>
</tr>
</table>

Вызывает ошибку:

<table>
<tr>
<td colspan=2> one cell in what is now the only row </td>
</tr>
</table>

Как только я запрограммировал страницу для удаления colspan из последнего примера, когда первая строка не была отображена, ошибка исчезла. Что-то вроде этого:

<?php if (first row with two cells is displayed) echo 'colspan=2'; ?>

Я считаю это логичным. colspan = 2, а только отдельные ячейки похожи на то, что кто-то меня посещает, чтобы повернуть направо на улицу, у которой нет никаких переходов, полагая, что они продолжат идти дальше. Они не будут. Вместо этого они будут повеситься на поиски чего-то, чего там нет. Возможно, это не совсем точная аналогия, но вы можете представить, что немой браузер создает ошибки отображения, ища вещи, которые вы говорите, есть, но нет. Браузеру не следует ожидать "думать", что, возможно, вы имели в виду ваш код по-другому, чем вы его написали.

Ответ 6

Просто исправление ссылки для ответа Алоччи.

https://w3c.github.io/html/single-page.html#forming-a-table

  1. Если в таблице есть строка или стол, содержащий только слоты, которые не привязаны к ячейке, то это ошибка модели таблицы.

Ответ 7

Этот поток немного устарел, но я отправляю его для всех, кто на него нападает.

Определение каждого столбца с помощью тега удаляет сообщение, а также дает значение colspan для чего-то связанного.

Дополнительная информация в ответе здесь: Почему colspan не применяется как ожидалось

Ответ 8

Если вы инициируете таблицу - она ​​исправляет ошибки столбца проверки. Если ваша таблица имеет 8 столбцов, то первая строка должна содержать 8 элементов, которые, если вы только инициируете, вы не хотите видеть. Элемент css:   tr.Init {граница: нет;} и следующую первую строку таблицы из 8 столбцов.                                  В результате вы не видите первую строку, и ваши ошибки проверки исправлены.