3 回答
TA贡献1843条经验 获得超7个赞
虽然这个问题已经得到解答(tl; dr:是的,空href值有效),但现有的答案都没有引用相关的规范。
空字符串不能是URI。但是,该href属性不仅将URI作为值,还将URI引用。空字符串可以是URI引用。
HTML 4.01
HTML 4.01 使用 RFC 2396,它在4.2节中说明。同文档参考文献(大胆强调我的):
不包含URI的URI引用是对当前文档的引用。换句话说,文档中的空URI引用被解释为对该文档的开头的引用,并且仅包含片段标识符的引用是对该文档的所标识的片段的引用。
RFC 2396已被RFC 3986(目前是IETF的URI标准)废弃,基本上也是如此。
HTML5
HTML5 使用(可能包含空格的有效URL → 有效URL)W3C的URL规范已停止使用。应该使用WHATWG的URL标准(参见最后一节)。
HTML 5.1
HTML 5.1 使用(有效的URL可能由空格包围 → 有效的URL)WHATWG的URL标准(参见下一节)。
什么是HTML
WHATWG的HTML 使用(可能由空格包围的有效URL)来自WHATWG的URL标准的有效URL字符串的定义,其中它表示它可以是相对URL的片段字符串,其必须至少是相对URL字符串,它可以是一个路径相对方案的URL字符串,它是一个路径相对URL字符串,不是以后跟的方案字符串开头的:,它的定义是(粗体强调我的):
路径相对URL字符串必须是零个或多个URL路径段字符串,通过U + 002F(/)彼此分隔,而不是以U + 002F(/)开头。
TA贡献1848条经验 获得超6个赞
正如其他人所说,它是有效的。
但每种方法都有一些缺点:
href="#" 在浏览器历史记录中添加了一个额外的条目(例如,在回扣时会很烦人)。
href="" 重新加载页面
href="javascript:;" 似乎没有任何问题(除了看起来凌乱和毫无意义) - 任何人都知道吗?
- 3 回答
- 0 关注
- 886 浏览
相关问题推荐
添加回答
举报
