为什么 ta:hover 在没有 href 属性的锚点上不起作用?

发布于 2024-07-25 08:04:39 字数 104 浏览 4 评论 0原文

在我的应用程序中,当我的锚标记没有 href 属性时,我无法使用 a:hover css 样式。

这有什么原因吗?

In my application, I can't get the a:hover css style to work when my anchor tag doesn't have an href attribute.

Is there any reason for this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

喜爱皱眉﹌ 2024-08-01 08:04:40

尝试添加 DOCTYPE。 如果没有它,IE 往往会忽略某些指令。 具体来说,在 IE8 中如果没有 HREF,锚标记上的 :hover 会失败,但在

Try adding DOCTYPE. IE tends to ignore certain directives without it. Specifically, :hover on an anchor tag fails without HREF in IE8 but works when the XHTML Transitional DOCTYPE is included.

陈独秀 2024-08-01 08:04:40

您使用哪种浏览器? 这可能是一个怪癖 - 当然 href 不是必需的,我不认为,即当使用旧的 方法在文档中创建链接时。

Which browser are you using? This may be a quirk - certainly href isn't required I don't think, i.e. when using the legacy <a name> method to create links within the document.

从此见与不见 2024-08-01 08:04:40

W3C CSS 2.0 规范 :hover 选择器没有提到任何关于需要 href 属性的内容。

我怀疑这是特定于实现的东西,很可能 IE 很愚蠢。 如果我没记错的话,微软在成为 CSS 标准的一部分之前就发明了 :hover 选择器,它最初只适用于锚点。 所以是的,这可能是 IE(6) 的一个怪癖。

IE6(所有 IE?)的一个 hacky 修复可能是使用 href="#" 它只指向当前页面(因此什么也不做)。

The W3C CSS 2.0 specification for the :hover selector doesn't mention anything about requiring an href attribute.

I suspect this is something implementation-specific, most likely IE being silly. If I remember right, Microsoft invented the :hover selector before it became part of the CSS standard, and it originally only applied to anchors. So yeah, it's probably a quirk of IE(6).

A hacky fix for IE6 (all IE?) might be to use href="#" which just points to the current page (and thus does nothing).

草莓酥 2024-08-01 08:04:39

IE 不支持在没有 href 的标签中使用 a:hover。 您可以使用 href="#" 或 href="Javascript:void(0);" 然而最后一个选项可能也不适用于 IE6。

或者使用 Javascript mouseover/mouseout。

IE doesn't support a:hover in a tag without href. You can use href="#" or href="Javascript:void(0);" however this last option probably won't work on IE6 either.

Or use Javascript mouseover/mouseout.

三生殊途 2024-08-01 08:04:39

悬停用于链接。 如果没有 HREF,标签就只是一个锚点。

换句话说...

<a name="target"></a>

是页面内的一个锚点...

<a href="#target">go there</a>

将是一个链接。

由于锚点在页面上没有视觉表示.. :hover 将毫无用处。

Hover is intended for links. Without the HREF the tag is simply an anchor.

In other words...

<a name="target"></a>

is an ANCHOR within a page that...

<a href="#target">go there</a>

would be a LINK to.

Since ANCHORs don't have visual representation on a page.. a :hover would be useless.

无言温柔 2024-08-01 08:04:39

可能不是答案,但 a:hover 必须发生在 a:link 和 a:visited 之后才有效。

请参阅 W3Schools

Might not be the answer, but a:hover must occur after a:link and a:visited to be effective.

See W3Schools

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文