注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

技术行者

时代的车轮在按照摩尔定律滚动。

 
 
 

日志

 
 

【IE bug】positioned的A标签不见了!(转)  

2012-11-09 20:20:00|  分类: web开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

注:这里所提到的IE是指的“IE7及以下版本的”。

你有没有遇到过定义为block的a的范围在IE7及以下版本中是没办法点击的,即点击范围是0?
你所设置的a样式是不是这样:
1. 绝对定位;
2. 内容为空。

还有另外一种情况是,你设置的a为block,并且设定了height和width,但实际上,有可点击的地方,但是可点击范围却不是你预想的,即范围是小于这个height和width。
那你所设置的a样式是不是这样:
1. 绝对定位;
2. 有内容(比如文字,图片,但是并不大于a容器的高宽)

这是IE的一个恼人的bug:
当一个a标签被绝对定位时,IE浏览器不支持其定义为block的高和宽。
它的可点击区域为它所包含的内容。如果内容为空,则可点击区域为0;如果有内容,则可点击区域为内容本身所占的位置。

解决方法?

现在以空内容为例。

尝试1
给a加个border,则可点击范围为该边框。

尝试2
给a加个background,则可点击范围为此a所定义的范围。
是不是认为这样就解决问题了?但是实际上,a是不需要背景的,或者它的背景在a底层的容器的背景里面。那能否给它一个空的background?

给它一个空背景,有以下方法:
1. background:url(about:blank);
2. background:url(data:);
3. background:url(mhtml:);
4. background:url(#);
5. background:url(fake_image.png);
6. background:url(image_1px_1px.png) repeat;
7. background:url(whateveryouwant);

这几个方法的比较,欢迎高人指点,待补充。

  评论这张
 
阅读(316)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017