因此,根据w3c验证工具,使用锚标记包装div(尤其是浮动的div)是不正确的标记。虽然这在目前为止所测试的每个浏览器中都有效(包括大多数手机和平板电脑),但还有更好的方法吗?
我发现你可以使用HTML4<按钮>使用块级内容,我可以使用它并使工作正常。但是将这些链接变为链接的正确方法是什么?我宁愿不使用javascript这些链接。
我考虑使用<形式>带有动作的标记,这对于这样一个简单的任务来说是一个额外的标记,但是Internet Explorer 6不能将该按钮识别为提交按钮,因此没有javascript链接仍然是死的。更糟糕的是,有些链接应该在灯箱中打开 - 使用javascript我可以只使用event.preventDefault(),但是如何使用表单完成此操作?
有没有更好的方法从块级元素中建立链接?或者我应该忽略验证,因为这仍然适用于几乎所有浏览器(如果不是每一个)?
(使用HTML4,但欢迎使用HTML5解决方案)
答案 0 :(得分:2)
Validators肯定会将(X)HTML4中块级元素周围的链接标记为无效,但这已成为一种人工用例。围绕具有a
标记的块级元素是一种常见且受到良好支持的实践(即使在较旧的浏览器中),您实际上无需担心其无效性。
HTML5规范包括近乎任意的链接包装。换句话说,您可以使用一对a
标记围绕许多元素(块级和内联),并且浏览器可以将链接目标应用于标记之间的每个元素。 Bruce Lawson写了一篇关于HTML5 Doctor上链接行为变化的精彩摘要。