我目前正在尝试修复一些由一些人建立的网站上的一些错误。 问题是,我很难看到他们已经做过的一些事情。
该网站的<div>
标记为onclick="window.location='foobar'"
,其中包含<a>
标记。两者都导致同一个地方。
这是否有原因?
谢谢!
答案 0 :(得分:5)
一些开发人员比其他开发人员更好。
更重要的是,开发人员是人,会犯错误。你找到了一个。
关于开发人员使用<button onclick="location='somewhere'">
的原因,即使在lot of bad advice on the internet上也有stackoverflow,即使是high rep users(也没有尝试选择j08691,只是说明一点。)
此外,button
元素可能不包含每个规范的a
元素,因此嵌套锚点无效。
尽管如此,页面可能仍然有效。使HTML真正强大的是它能够优雅地失败。浏览器能够使工作变得有效,即使开发人员做了写无效HTML的傻事,也不会出错或阻止整个页面工作。
答案 1 :(得分:0)
我只看到缺点:
但是,如果我理解正确,那么它周围会有<a href="foobar">
吗?
如果这是真的,那么这将使我上面列出的缺点不适用。
在这种情况下,该网站的作者可能已经使用这种技术作为某种黑客,以同样的方式在多个浏览器上设置样式......