Это хороший для помещения &nbsp; в пустом <td>?

Если это - структура:

<table cellspacing="0" cellpadding="0">
   <tr>
      <td>I don't need anything here, should I always put a &nbsp; here?</td>
      <td>item </td>
   </tr>
   <tr>
      <td>model</td>
      <td>one</td>
   </tr>
   <tr>
      <td>model</td>
      <td>two</td>
   </tr>
   <tr>
      <td>model</td>
      <td>three</td>
   </tr>
</table>

Как программа для чтения с экрана считает пробел td? Это семантически корректно?

24
задан BoltClock 7 November 2013 в 17:43
поделиться

3 ответа

ИМХО семантически правильно было бы оставить пустую ячейку на самом деле пустой. Однако я тоже заполняю пустые ячейки числами из прагматических соображений.

Что касается программ чтения с экрана, я должен сделать обоснованное предположение: пустые узлы, скорее всего, не будут прочитаны, потому что HTML состоит в основном из текстовых узлов с пробелами, которые читатели игнорируют, и я предполагаю, что сворачивается в простое пространство в приложениях для чтения (поскольку неразрывность является свойством визуальных медиа).

Для визуального отображения можно полагаться на свойство таблицы CSS empty-cells :

table {
    empty-cells: show;
}
12
ответ дан 29 November 2019 в 00:22
поделиться

Благодаря таким редакторам, как Dreamweaver, эта практика стала своего рода стандартом, так что даже если это не идеальное решение - по крайней мере, вы выиграли не будьте одиноки в этом. Кроме того, он более совместим со старым браузером, чем CSS empty-cells .

2
ответ дан 29 November 2019 в 00:22
поделиться

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

Хотя более элегантным подходом было бы использование colspan.

т.е.

<tr>
   <td colspan="2">item </td>
</tr>

Но это выровняет ваш контент по левому краю, и вам придется вручную (через css) применять стили, чтобы контент был выровнен там, где вы хотите.

Использование его с colspans хорошо то, что программы чтения с экрана будут читать только то, что там есть, а не пустые места

0
ответ дан 29 November 2019 в 00:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: