Помогите мне с этой ошибкой проверки. Я не могу понять то, что это означает или что не является жалобой на стандарты с моим HTML.
Я повторно отправлю его здесь с тех пор, надо надеяться, я зафиксирую его, и та ссылка больше не будет работать:
Столбец таблицы 2, установленный элементом td, не имеет никаких ячеек, начинающихся в нем.
…="tooltip_table">20 yd range
18
задан Thomas Bonini 18 February 2010 в 23:13
поделиться
4 ответа
Черновик HTML 5.2: раздел 4.9.12.1 Формирование таблицы
http://w3c.github.io/html/tabular-data.html#forming-a-table
Шаг 22: Если существует строка или столбец в таблице, содержащие только слоты, к которым не привязана ячейка, то это ошибка модели таблицы.
12
ответ дан 30 November 2019 в 07:38
поделиться
Когда вы говорите colspan = "2"
, предполагается, что столбец растягивается на два столбца. Я предполагаю, что второй столбец не определен где-либо еще в способе, что делает colspan = "2"
невозможным (и ненужным).
Я не могу найти ничего в спецификации , прямо заявляющего, что это незаконно. Может быть, алгоритм вычисления таблиц, указанный в этой спецификации, отличается от 4.01, но в моем часовом поясе уже слишком поздно пытаться обойти это :)
Однако я считаю, что сообщение об ошибке слишком логично, чтобы быть явной ошибкой .
Столбец 2 таблицы, созданный элементом td, не имеет ячеек, начинающихся с него.
Используя colspan = "2"
, вы подразумеваете существование второго столбца, которого в этом случае не существует. Здравый смысл подсказывает мне, что придираться - правильно.
Может быть, кто-нибудь сможет пролить свет на это ... Или это действительно ошибка.
16
ответ дан 30 November 2019 в 07:38
поделиться
Похоже, проблема с валидатором HTML5.
Эта ошибка не возникает, если вы проверяете, что это с HTML 4.01 Transitional, а таблица html не сильно изменился в html5.
Пожалуй, хорошая идея - сообщить об этом
1
ответ дан 30 November 2019 в 07:38
поделиться
У меня была такая же ошибка в динамически созданной таблице. В зависимости от ввода некоторые строки отображались или нет. Примерно так:
Не вызывает ошибки:
<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 с одиночными ячейками - это все равно что сказать кому-то, кто пришел ко мне, повернуть направо на улицу, на которой нет перекрестков, полагая, что они продолжат движение прямо. Они этого не сделают. Вместо этого они будут зацикливаться на поисках чего-то, чего нет. Возможно, это не совсем точная аналогия, но вы можете представить себе, как тупой браузер создает ошибки отображения, когда ищет то, о чем вы говорите, что он есть, но его нет. Не следует ожидать, что браузеры будут «думать» о том, что, возможно, вы имели в виду свой код иначе, чем то, как вы его написали.
1
ответ дан 30 November 2019 в 07:38
поделиться
Другие вопросы по тегам: Похожие вопросы: