上下文:目前,如果锚点应指向的链接为空,Wt(Web Toolkit)将把 WAnchor 对象呈现为<span>
标签而不是标签。<a>
然而,这种方法存在一些问题,特别是它给 CSS 样式增加了不必要的复杂性(例如,当使用 Twitter Bootstrap 时)。
我参与了与 Wt 开发人员之一的讨论,提出了一个补丁来改变这种行为:http ://redmine.emweb.be/issues/1348
他指出,当前行为是由于某些浏览器在呈现没有属性<a>
的标签时出现问题(可能是较旧的移动浏览器?)。href
按照官方的HTML规范,这样是没有问题的:
- http://dev.w3.org/html5/spec/single-page.html#the-a-element 如果 a 元素没有 href 属性,则该元素代表一个占位符,用于放置链接,如果它是相关的。
- http://www.w3.org/TR/html401/struct/links.html#edef-A 作者也可以创建一个不指定锚点的 A 元素,即不指定 href、name 或 id。这些属性的值可以在以后通过脚本设置。
据我所知...
<a>Link</a> // OK
<a href>Link</a> or <a href="">Link</a> // Undefined? (but common behavior is to navigate to the current URL)
<a href="/items">Link</a> // OK
我还使用 W3C HTML5 验证器检查了以下文档:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<a>Example of an anchor with no href attribute.</a>
<a href>Example of an anchor with a null href attribute.</a>
<a href="">Example of an anchor with an empty string href attribute.</a>
<a href="http://www.google.com/">Example of an anchor that links to Google.</a>
</body>
</html>
我收到一个警告:
Line 9, Column 8: Attribute href without an explicit value seen. The attribute may be dropped by IE7. <a href>Example of an anchor with a null href attribute.</a>
所以我的问题是:是否存在任何已知情况,标签上完全缺少href
属性<a>
会导致某些浏览器出现问题?IE?移动Safari?