我想在我<head>
标记上添加一个ID,但是我从这里读到了link:
在HTML5中,id属性可用于任何HTML元素(它会 验证任何HTML元素。但是,它不一定有用)。
在HTML 4.01中,id属性不能用于:base,head, html,meta,param,script,style和title。
我未能理解上述内容的确切含义。
我已经在IE8上进行了测试(来自开发工具兼容模式,而不是真正的ie8),我看到了一个id属性<HEAD id=head>
。
那么非法究竟是什么意思呢?如果我在HTML4浏览器中使用HTML5会发生什么?我左右会有错误的文档错误吗?
例如,我在IE 8中尝试了文章。它被渲染但是渲染了两次。 那么这是否意味着行为简直不稳定?
答案 0 :(得分:1)
根据DTD,这是非法的,因此尝试验证id属性为HTML 4的head元素将导致错误。但是,任何已知的DOM实现都不会强制执行此操作。
文章是一个HTML5元素,IE8已知不支持开箱即用,因此您将看到类似的问题。也就是说,通常任何涉及不支持的标记的行为都可能被认为是不稳定的。 HTML5放宽了对id属性的限制,因为没有理由限制在那里,并且再次如上所述,它恰好从未被强制执行过。