非IE浏览器对 MARQUEE 的支持
时间:2010-08-10
来源:互联网
MARQUEE 元素,就是著名的跑马灯,呃,,也可以说它实现了著名的跑马灯效果。省去我们很多的麻烦,它不属于W3C规范中的元素,最初由IE2.0引入,是微软发明的IE浏览器特有的元素,它可以用来创建一个文字滚动区域,并提供了一些特有的属性、方法及事件。
大概因为它看起来确实不错,所以目前所有浏览器都开始支持 MARQUEE 元素。但是具体的实现方式,估计都有不同。
Firefox中marquee对Date对象有依赖
<style>
div {
width: 200px;
background: #DDD;
}
</style>
<script>
Date = null;
</script>
<div>
<marquee behavior="alternate">TEXT</marquee>
</div>在上面的代码中,我将 Date对象置成了空。
打开浏览器,运行页面,”TEXT” 文字在除了Firefox 之外的浏览器之外都跑来跑去的,在 Firefox 中,压根没有看到 ”TEXT” 的影子。将Date=null;去掉,恢复正常。
看来,在 Firefox 里,MARQUEE 的实现和 Date 对象是有关系的。可能 MARQUEE 在Firefox里不是内置的HTML元素,是别的元素加JS代码模拟的也说不行。
Webkit浏览器中 MARQUEE 元素和它的 overflow 值
HTML code<style>
div {
width: 200px;
background: #DDD;
}
marquee {
overflow:hidden;
}
</style>
<div id="d1">
<marquee behavior="alternate">TEXT</marquee>
</div>
这段代码,在其他浏览器中都很正常,”TEXT” 还是跑来跑去,唯有 Safari 和 Chrome,”TEXT” 静止不动。
去掉 marquee{overflow:hidden}; 的设置后,一切正常……
可以打开 Webkit 浏览器,使用它的开发者工具,查看一下 MARQUEE 元素的样式,你会发现,它的 overflow 值是: “-webkit-marquee;”,大概,这就是Webkit内核的浏览器实现 marquee 的秘密吧。
HTML code<style>
div {
width: 200px;
background: #DDD;
}
#d2 {
overflow: -webkit-marquee;
}
</style>
<div id="d1">
<div id="d2" behavior="alternate">TEXT</div>
</div>
上面代码中并没有 MARQUEE 元素,但是在Webkit 内核的浏览器中 “TEXT” 还是会跑来跑去的。看来,Webkit 中 MARQUEE 的秘密果然在 “overflow: -webkit-marquee;”。
这个元素虽然标准中尚未支持,用起来还是蛮方便的,但是,用的时候一定注意,在Firefox中不要随便动 Date 对象,在Webkit 浏览器中,不要随便改 overflow 特性。
大概因为它看起来确实不错,所以目前所有浏览器都开始支持 MARQUEE 元素。但是具体的实现方式,估计都有不同。
Firefox中marquee对Date对象有依赖
<style>
div {
width: 200px;
background: #DDD;
}
</style>
<script>
Date = null;
</script>
<div>
<marquee behavior="alternate">TEXT</marquee>
</div>在上面的代码中,我将 Date对象置成了空。
打开浏览器,运行页面,”TEXT” 文字在除了Firefox 之外的浏览器之外都跑来跑去的,在 Firefox 中,压根没有看到 ”TEXT” 的影子。将Date=null;去掉,恢复正常。
看来,在 Firefox 里,MARQUEE 的实现和 Date 对象是有关系的。可能 MARQUEE 在Firefox里不是内置的HTML元素,是别的元素加JS代码模拟的也说不行。
Webkit浏览器中 MARQUEE 元素和它的 overflow 值
HTML code<style>
div {
width: 200px;
background: #DDD;
}
marquee {
overflow:hidden;
}
</style>
<div id="d1">
<marquee behavior="alternate">TEXT</marquee>
</div>
这段代码,在其他浏览器中都很正常,”TEXT” 还是跑来跑去,唯有 Safari 和 Chrome,”TEXT” 静止不动。
去掉 marquee{overflow:hidden}; 的设置后,一切正常……
可以打开 Webkit 浏览器,使用它的开发者工具,查看一下 MARQUEE 元素的样式,你会发现,它的 overflow 值是: “-webkit-marquee;”,大概,这就是Webkit内核的浏览器实现 marquee 的秘密吧。
HTML code<style>
div {
width: 200px;
background: #DDD;
}
#d2 {
overflow: -webkit-marquee;
}
</style>
<div id="d1">
<div id="d2" behavior="alternate">TEXT</div>
</div>
上面代码中并没有 MARQUEE 元素,但是在Webkit 内核的浏览器中 “TEXT” 还是会跑来跑去的。看来,Webkit 中 MARQUEE 的秘密果然在 “overflow: -webkit-marquee;”。
这个元素虽然标准中尚未支持,用起来还是蛮方便的,但是,用的时候一定注意,在Firefox中不要随便动 Date 对象,在Webkit 浏览器中,不要随便改 overflow 特性。
作者: RICHARD 发布时间: 2010-08-10
还是让它休息吧
作者: soni 发布时间: 2010-08-10
呵呵 同意!~
虽然是祖先 不过还是让他休息算了
虽然是祖先 不过还是让他休息算了
作者: sheak 发布时间: 2010-08-10
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28