我知道在HTML/XHTML页面中id必须是唯一的。

对于一个给定的元素,我可以给它分配多个id吗?

<div id="nested_element_123 task_123"></div>

我意识到我有一个简单的解决方案,只需使用一个类。我只是好奇以这种方式使用id。


当前回答

这很有趣,但据我所知,答案肯定是否定的。我不明白为什么您需要一个嵌套ID,因为您通常会与具有相同嵌套ID的另一个元素交叉。如果你不做,那就没有意义,如果你做了,那也没什么意义。

其他回答

这很有趣,但据我所知,答案肯定是否定的。我不明白为什么您需要一个嵌套ID,因为您通常会与具有相同嵌套ID的另一个元素交叉。如果你不做,那就没有意义,如果你做了,那也没什么意义。

与别人说的相反,正确的答案是肯定的

Selectors规范对此非常清楚:

如果一个元素有多个ID属性,为了ID选择器的目的,所有这些属性都必须被视为该元素的ID。这种情况可以混合使用xml:id、DOM3 Core、xml dtd和特定于名称空间的知识来实现。


Edit

澄清一下:是的,一个XHTML元素可以有多个id,例如:

<p id="foo" xml:id="bar">

但是使用空格分隔的列表将多个id分配给同一个id属性是不可能的。

ID应该是唯一的,所以您应该在一个页面上只使用特定ID一次。类可以重复使用。

查看HTML id属性(W3Schools)了解更多详细信息。

No.

话虽如此,没有什么能阻止你这么做。但是不同的浏览器会产生不一致的行为。不要这样做。每个元素一个ID。

如果需要对一个元素进行多个赋值,请使用classes(用空格分隔)。

这是专门的课程,而且 下面是你可以理解它的代码:

<html>
<head>
    <style type="text/css">
     .personal{
            height:100px;
            width: 100px;

        }
    .fam{
            border: 2px solid #ccc;
        }
    .x{
            background-color:#ccc;
        }

    </style>
</head>

<body>
    <div class="personal fam x"></div>
</body>
</html>