Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法


Posted in Javascript onDecember 06, 2010

今天又回顾了一下这个插件,然后发现它在IE6下面工作的时候,显示起来是不正常的,tip经常出现在很离谱的位置。问题还有,由于tip的显示效果没有用到任何图像,都是纯的CSS,所以里面用CSS实现的三角形在IE6下是无法工作的,会显示一块有色区域,很丑,所以我就想动手改它一下。先上一张对比图好了:

Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
js方面的代码肯定是没问题的,问题出CSS上,Colortip用的是position进行定位,在IE6下面可能存在着一点问题。而且由于IE6不支持border-color:transparent的属性,所以tip下面的三角形也有问题。下面修正它吧。
打开插件的colortip-1.0-jquery.css这个文件,在里面找到如下代码:

.pointyTip,.pointyTipShadow{ 
/* Setting a thick transparent border on a 0x0 div to create a triangle */ 
border:6px solid transparent; 
_border:6px solid #123456; /*指定一个特别的颜色值,为使用chroma滤镜作准备*/ 
bottom:-12px; 
height:0; 
left:50%; 
margin-left:-6px; 
position:absolute; 
width:0; 
font-size:0; /*IE下空标签会有一个高度,把font-size设为0可以清除这个高度*/ 
_filter:chroma(color=#123456); /*为IE6使用chroma滤镜将颜色#123456过滤成透明的*/ 
}

如果大家自行看一下代码的话,可能会发现我贴出来的代码和原来相比有点不同,但是我已经把注释写在里面了,应该可以理解吧。 下面继续:
.pointyTipShadow{ 
/* The shadow tip is 1px larger, so it acts as a border to the tip */ 
border-width:7px; 
bottom:-14px; 
_bottom:-15px; /*将小三角形的位置微调一下更准确*/ 
margin-left:-7px; 
} 
.colorTipContainer{ 
position:relative; 
text-decoration:none !important; 
_zoom:1; /*不知道为什么,这里加上zoom:1后IE6下使用left:50%才能得到正确的位置,难道内联的元素没有layout?无法准确表达……*/ 
}

好了,到这里就修正完毕了,在我的机器上,用IEtester和VMware虚拟机的XP+IE6都测试通过,你也可以试试效果。有任何问题可以向我反馈,我能改则改。代码好理解,不能理解的直接用插件就行了。

插件网站 | 原版DEMO | 改后DEMO | 修正后的插件下载

再补充一句,原版和改后的DEMO在高级浏览器里面的效果是一样的,没区别,但是用IE6试试就知道了。希望我做的这一点点微不足道的工作,为喜欢这款插件的朋友们带来方便,^_^
关于纯CSS的方法实现三角形的效果,可以参看Mr.Think的这篇文章,很详细很不错的技巧CSS技巧之圆角背景与三角形。

Javascript 相关文章推荐
js动态设置div的值下例子
Oct 29 Javascript
node.js中的path.normalize方法使用说明
Dec 08 Javascript
node.js中的fs.createReadStream方法使用说明
Dec 17 Javascript
javascript中数组方法汇总
Jul 07 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
Nov 17 Javascript
PHP+jquery+ajax实现分页
Dec 09 Javascript
javascript编写简易计算器
May 06 Javascript
Vue + Vue-router 同名路由切换数据不更新的方法
Nov 20 Javascript
分析javascript原型及原型链
Mar 18 Javascript
AngularJS监听ng-repeat渲染完成的方法
Mar 20 Javascript
微信小程序实现分享商品海报功能
Sep 30 Javascript
vue-router的hooks用法详解
Jun 08 Javascript
使用JS进行目录上传(相当于批量上传)
Dec 05 #Javascript
js对象的构造和继承实现代码
Dec 05 #Javascript
收集的一些Array及String原型对象的扩展实现代码
Dec 05 #Javascript
script标签的 charset 属性使用说明
Dec 04 #Javascript
本地对象Array的原型扩展实现代码
Dec 04 #Javascript
悄悄用脚本检查你访问过哪些网站的代码
Dec 04 #Javascript
jQuery)扩展jQuery系列之一 模拟alert,confirm(一)
Dec 04 #Javascript
You might like
优化PHP程序的方法小结
2012/02/23 PHP
php设计模式小结
2013/02/15 PHP
php引用返回与取消引用的详解
2013/06/08 PHP
PHP中开启gzip压缩的2种方法
2015/01/31 PHP
优化WordPress中文章与评论的时间显示
2016/01/12 PHP
SAE实时日志接口SDK用法示例
2016/10/09 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
2018/12/21 PHP
php将字符串转换为数组实例讲解
2020/05/05 PHP
关于页面嵌入swf覆盖div层的问题的解决方法
2014/02/11 Javascript
一个简单的jquery的多选下拉框(自写)
2014/05/05 Javascript
node.js中的fs.writeFileSync方法使用说明
2014/12/14 Javascript
JQuery.get提交页面不跳转的解决方法
2015/01/13 Javascript
JavaScript中反正弦函数Math.asin()的使用简介
2015/06/14 Javascript
jQuery实现可编辑的表格实例讲解(2)
2015/09/17 Javascript
jQuery实现瀑布流布局详解(PC和移动端)
2020/09/01 Javascript
Jquery $when done then的用法详解
2016/05/20 Javascript
Javascript中的对象和原型(二)
2016/08/12 Javascript
基于vue.js实现图片轮播效果
2016/12/01 Javascript
深入理解Angular4订阅(Subscribe)与取消
2017/11/22 Javascript
微信小程序自定义toast的实现代码
2018/11/16 Javascript
[05:45]Ti4观战指南(下)
2014/07/07 DOTA
分享15个最受欢迎的Python开源框架
2014/07/13 Python
Python基于回溯法子集树模板解决取物搭配问题实例
2017/09/02 Python
Python发送http请求解析返回json的实例
2018/03/26 Python
使用Nibabel库对nii格式图像的读写操作
2020/07/01 Python
python利用 keyboard 库记录键盘事件
2020/10/16 Python
米兰必去买手店排行榜首位:Antonioli
2016/09/11 全球购物
宝信软件JAVA工程师面试经历
2012/08/19 面试题
大专自我鉴定范文
2013/10/23 职场文书
教你打造完美的创业计划书
2014/01/06 职场文书
我的长生果教学反思
2014/04/28 职场文书
党员贯彻十八大精神思想汇报范文
2014/10/25 职场文书
股东大会通知
2015/04/24 职场文书
离婚代理词范文
2015/05/23 职场文书
格林童话读书笔记
2015/06/30 职场文书
Vue3实现简易音乐播放器组件
2022/08/14 Vue.js