IE:只有一部分锚可以点击

mar*_*cgg 12 html css internet-explorer

我想要一个具有特定高度和宽度的锚.

它上面没有文字,因为它意味着要放在页面的某个区域之前.

这是代码:

<a href="/" style="width:370px;height:80px;display:block;position:absolute;"></a>
Run Code Online (Sandbox Code Playgroud)

除了IE6和IE7之外,它在所有方面都运行良好.如果我添加边框,我可以看到锚具有正确的大小,但如果我尝试单击它,则只有顶部可以单击.

我不知道为什么会这样做.我尝试添加一个onclick,即使有警报,同样的事情,单击锚的底部是不可能的.

这真的很奇怪,之前有没有发生过这种事?一切都会有所帮助.

小智 18

处理这个问题的另一种方法是一个小的"黑客/解决方法",当块元素得到背景颜色时,一切都很好,就像你所描述的那样.利用这样的东西:

a {
  ..
  background-color: white;
  opacity: 0;
  filter: alpha(opacity=0);
  ..
}
Run Code Online (Sandbox Code Playgroud)


Mat*_*ges 15

在以前的IE版本中,无法在块级元素本身上注册onclick事件.相反,IE将onclick应用于块内的文本或内联元素.

我发现在锚点内放置一个与完整锚点大小相同的透明图像将注册onclick.

<a href="/" style="width:370px;height:80px;display:block;position:absolute;">
    <img src="Transparent.gif" style="width: 370px; height: 80px"/>
</a>
Run Code Online (Sandbox Code Playgroud)

  • 我没有完全使用你的代码,我做了:<a href ="/"style ="width:370px; height:80px; display:block; position:absolute; z-index:9999; background:url(/ images /empty.gif);"> </A> (3认同)