锚标签不在firefox和chrome中工作

sur*_*003 7 html anchor firefox google-chrome

我面临一个惊人的问题.我的客户端网站上的图像有超链接.它在IE中工作但是当我在Chrome/Mozilla中打开相同的页面时,它没有显示锚点指针,点击任何一个都没有任何反应.我的链接代码是

<a href="Home.aspx?ModuleID=1">
 <img alt="Alternative Text" src="Images/Logo.gif" />
</a>
Run Code Online (Sandbox Code Playgroud)

有人知道问题是什么吗?

小智 11

简单的解决方法:这适用于我目前使用过的所有测试过的浏览器 document.getElementById([anchor tag]).scrollToView(true);

示例: - from--

<a href="#" onclick="document.getElementById('ShowMeHow2').scrollIntoView(true);return false;">
Run Code Online (Sandbox Code Playgroud)

- 至 -

<a id="ShowMeHow2" name="ShowMeHow2"> </a>
Run Code Online (Sandbox Code Playgroud)


小智 8

检查页面中是否正在使用css z-order.不正确的z顺序可能导致按钮和链接无法正常工作.


cdo*_*ner 5

我面临同样的问题。这个建议(添加位置:相对于包含的 div)似乎解决了它,但我正在做绝对定位,需要以另一种方式解决这个问题。不过,我认为它可能会帮助其他人。


Ben*_*ert 5

我发现仅针对与Chrome*相同的问题对我有用,就是不要将锚ID包含在块级元素中,但要包含调用.

恩.

    <body>
    <a id="top" name="top"> </a>
    <p>...</p>
    <p><a href="#top">Back to Top</a></p>
    </body>
    <!-- /end ex. -->
Run Code Online (Sandbox Code Playgroud)

希望这有帮助:)适用于所有浏览器.

-ben

  • 我想补充一点,为了符合W3C HTML5验证,您必须删除name属性,因为它在HTML5中已过时. (2认同)

Mat*_*zer 0

如果没有完整的 HTML 源代码,我将指出该锚点是嵌套的或位于某个没有结束标记的元素之后。

如果这不是问题,请发布完整的 HTML 源代码。

您可以通过以下方式验证您的文档来轻松找到此问题:

它是 W3C 官方 HTML/XHTML 验证器,因此如果某些元素未关闭,它会指出您需要更正哪个元素!

编辑:看完答案评论中发布的 HTML 源代码后...文档类型 (DOCTYPE) 声明在哪里?你忘了添加它!

将其添加到 HTML 文档的开头:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Run Code Online (Sandbox Code Playgroud)

当您不提供文档类型时,浏览器会以“怪异”模式呈现网页,这是一种兼容模式,可能不会按您的预期呈现页面。在这里了解更多信息:

让我知道这是否解决了您的问题!