有效的XHTML错误-<;部门>;不允许在<;a>;

有效的XHTML错误-<;部门>;不允许在<;a>;,html,css,xhtml,html-validation,Html,Css,Xhtml,Html Validation,我正在尝试验证我的文档是否为XHTML1.0。我有以下错误: 第73行第137列:文档类型此处不允许元素“div”; 缺少“对象”、“小程序”、“映射”、“iframe”、“按钮”、“ins”中的一个, “del”开始标记 对应于此代码的: <td><a href="download.php?f='.$file.'"><div class="download"></div></a></td> 我试图显示一个下载文件的链接,

我正在尝试验证我的文档是否为XHTML1.0。我有以下错误:

第73行第137列:文档类型此处不允许元素“div”; 缺少“对象”、“小程序”、“映射”、“iframe”、“按钮”、“ins”中的一个, “del”开始标记

对应于此代码的:

<td><a href="download.php?f='.$file.'"><div class="download"></div></a></td>
我试图显示一个下载文件的链接,CSS将图像和悬停图像放在一起,它们是:

但是反转标记顺序,如:

<td><div class="download"><a href="download.php?f='.$file.'"></a></div></td>

显示正确的图像和悬停图像,但不是可单击的链接

我不知道如何显示正确的链接


谢谢

为什么不像使用.download类那样设置标记的样式并去掉div。例如,将其从

<td><div class="download"><a href="download.php?f='.$file.'"></a></div></td>


为什么不像使用.download类那样设置标记的样式并去掉div。例如,将其从

<td><div class="download"><a href="download.php?f='.$file.'"></a></div></td>


链接不可单击,因为它是内联的且为空。这意味着它的宽度和高度为零,因此基本上是不可见的。您应该打开


(使用简单的彩色背景,但没有区别)

该链接不可单击,因为它是内联的,并且是空的。这意味着它的宽度和高度为零,因此基本上是不可见的。您应该打开


(使用简单的彩色背景,但没有区别)

我相信这是有原因的,但是为什么你使用XHTML而不是HTML5?我相信这是有原因的,但是为什么你使用XHTML而不是HTML5?+1如果其他东西不需要
div
,这也是一个很好的解决方案。+1这也是一个很好的解决方案,如果别的东西不需要
div
。非常感谢!我需要div,所以解决方案是完美的!空的
a
元素虽然形式上有效,但对可访问性非常不利。使用带有
img
的内容图像,具有适当的
alt
属性和合理的
title
属性。即便如此,这也是值得怀疑的;一个链接通常应该有一个描述性的链接文本。@JukkaK.Korpela如果你给链接一个
标题
,它本身可能会有很大帮助,但我完全同意你所说的。非常感谢!我需要div,所以解决方案是完美的!空的
a
元素虽然形式上有效,但对可访问性非常不利。使用带有
img
的内容图像,具有适当的
alt
属性和合理的
title
属性。即便如此,这也是值得怀疑的;一个链接通常应该有一个描述性的链接文本。@JukkaK.Korpela如果你给这个链接一个
标题
,它本身会有很大帮助,但我完全同意你所说的。
<td><a class="download" href="download.php?f='.$file.'"></a></td>
.download a { display: block; height: 100%; }
<td><div class="download"><a href="download.php?f='.$file.'"></a></div></td>