html中的唯一id值

时间:2010-12-22 00:03:16

标签: html firefox google-chrome

这个问题更多的是出于好奇而不是被困住。我知道在html id中需要是唯一的,我可以在html验证中看到错误。然而,浏览器很乐意将样式表应用于这两个元素。是因为他们在解析或更简单时更放松。这是否意味着我可以将它用于造型等,或者它是否有副作用。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>

<style type="text/css">
  #abc { color: red; }
</style>
</head>
<body>
  <div id="abc">Hello Div 1</div>
  <div id="abc">Hello Div 2</div>
</body>
</html>

浏览器输出 alt text

3 个答案:

答案 0 :(得分:3)

如果您的浏览器每次加载有错误的HTML页面时都会死亡,那么它一直在消亡。你不会想太多的浏览器。

对于浏览器来说,尽可能宽容并尽可能地利用它所拥有的功能,这一点非常重要。因此,所有浏览器在处理标记方面往往都非常宽容。

当然,这并不意味着您不应该编写有效的HTML。

答案 1 :(得分:0)

我不会依赖这种行为。如您所知,拥有两个具有相同ID的元素是错误的。

是的,HTML中的容忍错误在某种程度上可以补偿。例如,缺少结束标签。这或多或少都有效,具体取决于错误。

应使用CSS classes完成几个元素的样式设计。

答案 2 :(得分:0)

使用“class”来调整css。

副作用:当您想要使用getElementById并添加动态功能时,您会觉得不太舒服。从设计角度来看并不重要。