使用HTML显示多个列列表的最佳方法

使用HTML显示多个列列表的最佳方法,html,css,Html,Css,我需要显示一个简单的两列列表。我看到的选项有、或。一种方式比其他方式“更好”吗?我想我将“更好”定义为在所有相对现代的浏览器中一致呈现,在语义上比其他浏览器更正确,更容易访问,等等 +--------------+-----------------+ | Name | John Doe | | Address | 101 Main Street | | City | Doomview | | State | NY

我需要显示一个简单的两列列表。我看到的选项有
。一种方式比其他方式“更好”吗?我想我将“更好”定义为在所有相对现代的浏览器中一致呈现,在语义上比其他浏览器更正确,更容易访问,等等

+--------------+-----------------+
| Name         | John Doe        |
| Address      | 101 Main Street |
| City         | Doomview        |
| State        | NY              |
| Zipcode      | 12312           |
| Phone Number | (555) 555-1212  |
+--------------+-----------------+
是的,也不是。没有一种方法比另一种更好。每个选项“更好”的唯一方法是每个选项的用途

有关每个标记的用途的详细列表,请参见此处:

在本例中,您需要的布局看起来像一个包含两列的表。在本例中,我将使用
而不是其他标记,因为您需要一个表布局

标签定义了一个描述列表。

标记定义无序(项目符号)列表。


标签定义了一个HTML表格。

表格设计是设计网站的一种老方法,因此只有在您真正需要表格样式时才使用它们。改用div设计。 对于列表,使用
ul
li
元素。 您可以使用以下内容:

<div id="left-col">
    <ul>
        <li></li>
        <li></li>
    <ul>
</div>
<div id="right-col">
    <ul>
        <li></li>
        <li></li>
    <ul>
</div>


但是如果你想要一张有边框的桌子,那么就用
标签这个问题我也提了一段时间了。我决定使用
元素

从语义上讲,我觉得
并不能完全捕捉到您正在做的事情。表格应该用于表格数据,在我看来,表格数据意味着列(=属性)和行(=实体)

根据MDN:

HTML元素(或HTML描述列表元素)包含一组术语和描述。此元素的常见用途是实现术语表或显示元数据(键值对列表)

然而,在这种情况下,我们似乎只有一个实体,它本质上是一个key=>value列表,也称为DL

我将链接到将DL设置为表格样式的示例:

结果是:

是的,旧网站设计有表格,但出于布局目的,表格是完美的。如果你想要表格样式(边框等),你必须使用表格,但表格不应用于设计网站的结构。这是不赞成的。是的,同意。但他的问题并没有说明他正在使用来设计整个网站。我同意,我不是在设计一个网站,只是展示了一个准确的列表。定义列表似乎是一个不错的选择,因为
名称
与一个值相关联。谢谢Elite。我知道桌子是“老式的”,但它们确实很好用。定义的列表在语义上似乎更为正确,因为“地址”是“101大街”的定义。但这一切都很重要吗?对于您想要的布局,我认为
标记将是最符合逻辑的选择,这取决于您所请求的布局@user1032531如果我们讨论的是布局,那么我们应该讨论CSS。HTML应该是语义的,因为布局的原因,没有“逻辑”的选择。从我自己的答案可以看出,您可以将DL设置为类似于表格的样式。“坦率地说,你可以把任何东西做成桌子。”巴特同意。但不是有两列吗?列通常与表一起使用。是的,但是您可以将dl设置为与表相同的样式吗?使用边框颜色、背景颜色。等等?是的,我也被这个问题困扰了一段时间。我同意
在语义上更为正确,但是,如果元素为空,则需要更多的CSS,渲染有时是一个问题(我使用
来修复它)。你发布的链接很好。有一个“简单”的选择,一个“正确”的选择,还有一个“最好”的选择。简单的选择是
,正确的选择是
,最佳选择由您决定。