стандартный Xhtml-div против li - PullRequest
0 голосов
/ 15 сентября 2009

Мне нужно ваше предложение в следующем сценарии. Допустим, у меня есть что-то вроде

Col1 Col2
A    D
B    E
C    F

Теперь, чтобы получить это прямо сейчас в моем HTML, я использую .. like

<div class="col1">
  <div>A</div> 
  <div>B</div>
  ..........
</div>
<div class="col2">
  <div>D</div> 
  <div>E</div>
  ..........
</div>

Но здесь я использую слишком много div .. все нормально, как в стандартном XHTML, или я должен использовать <li>?

Может кто-нибудь предложить с правильным объяснением, или, может быть, что-то еще? Примечание: Таблица не используется Спасибо.

Ответы [ 4 ]

4 голосов
/ 15 сентября 2009

Мне кажется, что вы пытаетесь отобразить табличные данные, для которых элемент table отлично подходит и предназначен для использования.

<table>
  <tr>
    <th>Col1</th>
    <th>Col2</th>
  </tr>
  <tr>
    <td>A</td>
    <td>B</td>
  </tr>
</table>

Если вы действительно не хотите использовать table, я бы использовал элемент div, как вы сделали в своем примере. Но, в конце концов, вы поймете, что то, что вы пытаетесь достичь, - это симуляция уже существующего элемента - table.

Следует иметь в виду, что когда вы используете div в качестве таблицы, она не будет хорошо выглядеть, если вы отключите CSS или просматриваете его в более старом мобильном браузере (который не поддерживает плавания).

0 голосов
/ 15 сентября 2009

«Семантический стандарт» определенно должен был бы использовать таблицы. Как уже говорили другие, это ваши основные табличные данные. Вот для чего они, конец истории.

Однако, если вы не можете использовать таблицы, то я бы сказал, что следующей наиболее семантически значимой структурой будет список, потому что он позволяет вам определять отношения между элементами, например:

<ul>
<li>Col1
    <ul>
    <li>A</li>
    <li>B</li>
    <li>C</li>
    </ul></li>
<li>Col2
   <ul>
   <li>D</li>
   <li>E</li>
   <li>F</li>
   </ul></li>
</ul>

Тогда хуже всего будет div. «Худший», потому что они не имеют смыслового значения. Тэг-суп, в основном.

0 голосов
/ 15 сентября 2009

Я бы поддержал заявление Мантикоры. Таблицы также следует использовать для табличных данных (данные отображаются в виде строк и столбцов). Все начинают с того, что используют div для разметки вместо таблиц, но это не значит, что таблицы следует оставлять. То, что вы делаете, это НЕ макет; это структурирование определенного сегмента контента, и поэтому вы должны использовать тег таблицы. Плюс некоторые преимущества:

  • Вы можете использовать символы, содержащие теги, для создания заголовка таблицы. Если пользователь печатает таблицу, и она выходит за пределы одной страницы, содержимое в будет печататься вверху каждой новой страницы. То же самое относится и к тегу. Небольшое отличие от этого: содержимое внутри должно быть в формате содержимого ячейки 1 - не используйте тег внутри s, за исключением тега в.
  • Div практически невозможно разместить в формате таблицы. Они полезны для макета дизайна страницы, но не обязательно для табличных данных. Кроме того, если вы создаете интерактивную страницу, на которой пользователь будет добавлять дополнительные данные, вам будет очень трудно понять, как размещаются элементы div.
0 голосов
/ 15 сентября 2009

Возможно, вы могли бы использовать список определений , хотя это больше подходит для данных пары ключ / значение, хотя это может иметь место в вашей ситуации, я не могу сказать.

Если нет, как говорит Мантикора, просто используйте таблицы: http://giveupandusetables.com/

...