html – 如何使一个空的锚标签可以在IE7中点击?

我需要在背景图像中创建一个可点击的区域,以生成JavaScript使用的事件。所以,我创建了一个标签,里面我插入一些相关的文本在语义无意义的标签之间,然后隐藏:
<a href="#"><i>foo</i></a>

然后我给了锚标签display:block”属性,width和height值,并将其定位在我需要它与背景图像相关的位置。在Firefox中,这个效果很好 – 我将鼠标悬停在我的光标上,如预期的那样会改变 – 我有一些可点击的东西。然而,IE7并不喜欢锚标签为“空”,因此不将其视为可点击。所以我把它添加到css中的锚标签中:

background:url(/no-image.jpg);

…似乎愚弄IE7,以假定有东西在那里。 IE7现在将该区域视为可点击,即使锚标签实际上没有背景图片。但这似乎是对我的一个黑客,我想知道是否有一个更优雅的方式来处理这个问题。任何想法将不胜感激。谢谢。

解决方法

相反,摆脱语义无意义的标签,并使用正常的CSS图像替换。
<a href="#">foo</a>

然后CSS:

a { 
    width:100px; 
    height:100px; 
    display:block; 
    text-indent:-9999px; 
    background:url(/img.png) no-repeat;
}

添加你需要的任何位置,它应该工作正常。

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些