UL用于语义列表和标题

时间:2011-12-12 14:47:50

标签: html semantics html-lists

我通常使用ul作为项目列表

<ul class="users">
  <li class="user">
    <div class="name">Jack</div>
    <div class="gender">M</div>
    <div class="salary">$15k</div>
    <div class="rank">Burger Flipper</div>
  </li>
  <li class="user">
    <div class="name">Jill</div>
    <div class="gender">F</div>
    <div class="salary">$17k</div>
    <div class="rank">Fry Tosser</div>
  </li>
</ul>

为此列表创建标题时,最好将标题作为列表的一部分包含在内

  <li class="user head">
    <div class="human-attributes">This is:</div>
    <div class="job-attributes">They are:</div>
  </li>

或者它应该是一个单独的列表?

<ul class="users head">
  <li class="user">
    <div class="human-attributes">This is:</div>
    <div class="job-attributes">They are:</div>
  </li>
</ul>

3 个答案:

答案 0 :(得分:1)

取决于你想用它做什么..你真的应该使用:

<table><thead></thead><tbody></tbody></table> 

适用于您所描述内容的构造,而不是&lt; li&gt;嵌入&lt; div&gt;默认情况下会以奇怪的方式呈现。

然后,您可以使用CSS来控制行为。

答案 1 :(得分:0)

这是HTML中表格的合法用法之一。您不应该在语义上使用无序列表来呈现“表格”数据(这是您所描述的)。你应该使用这样的东西:

<table>
  <thead>
    <tr>
      <th>Name</th>
      <th>Gender</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Jack</td>
      <td>M</td>
    </tr>
    <tr>
      <td>Jill</td>
      <td>F</td>
    </tr>
  </tbody>
</table>

答案 2 :(得分:-2)

http://www.w3.org/MarkUp/html3/listheader.html 是一份工作草案。 目前,您的解决方案似乎是最好的。但也许是一个不同的阶层。