各种常用浏览器getBoundingClientRect的解析


Posted in Javascript onMay 21, 2009

先上测试代码

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>管理系统</title> 
</head> 
<body style="" onselectstart="return false;" ><!--7699c7--> 
<div id="w3124" style="border:1px solid #ff0000;position:relative;top:200px;left:400px;width:400px;"> 
</div> 
<SCRIPT> 
alert(document.getElementById("w3124").getBoundingClientRect().top); 
</SCRIPT> 
</body> 
</html>

下面是alert结果
IE、FF、Chrome:208
IE内核的Maxthon:215
IE内核的TheWorld:217
当body加上margin:0;padding:0 的时候IE、FF、Chrome、Maxthon下均为200,而只有TheWorld为202
然后把HTML代码头部的DOCTYPE声明去掉的时候FF、Chrome、Maxthon值均为200,而IE由于进入Quirks模式,此时的值为202,而TheWorld仍为为202
结论
FF、Chrome、Maxthon为始终坚持标准模式(Standards Mode),IE在加了声明后也进入标准模式(Standards Mode),只有TheWorld始终坚持Quirks模式,万恶!
建议
为了兼容把body加上margin:0;padding:0,注意加DOCTYPE声明(有了它IE还是挺听话的)
另:
1.通篇用绿色希望大家眼睛能放松些。
2.小弟第一次发博客,心灵脆弱,无法承受各种打击,如果有啥不对的,请指正,我一定虚心改正,拍砖请轻一点,谢谢啦
3.参考文献 
Javascript 相关文章推荐
用JavaScript显示随机图像或引用
Apr 21 Javascript
JS函数验证总结(方便js客户端输入验证)
Oct 29 Javascript
MultiSelect左右选择控件的设计与实现介绍
Jun 08 Javascript
javascript获取ckeditor编辑器的值(实现代码)
Nov 18 Javascript
解析jQuery的三种bind/One/Live事件绑定使用方法
Dec 30 Javascript
jQuery动态移除和添加背景图片的方法详解
Mar 07 Javascript
jQuery实现的简单拖拽功能示例【测试可用】
Aug 14 jQuery
swiper在vue项目中loop循环轮播失效的解决方法
Sep 15 Javascript
Iview Table组件中各种组件扩展的使用
Oct 20 Javascript
javascript刷新父页面方法汇总详解
Oct 10 Javascript
Vue-cli打包后部署到子目录下的路径问题说明
Sep 02 Javascript
原型和原型链 prototype和proto的区别详情
Nov 02 Javascript
简单的js分页脚本
May 21 #Javascript
input+select(multiple) 实现下拉框输入值
May 21 #Javascript
一些Javascript的IE和Firefox(火狐)兼容性的问题总结及常用例子
May 21 #Javascript
Javascript 兼容firefox的一些问题
May 21 #Javascript
鼠标经过的文本框textbox变色
May 21 #Javascript
jQuery 性能优化指南(3)
May 21 #Javascript
jQuery 性能优化指南(2)
May 21 #Javascript
You might like
PHP处理SQL脚本文件导入到MySQL的代码实例
2014/03/17 PHP
PHP基于数组实现的分页函数实例
2014/08/20 PHP
PHP设计模式之工厂模式实例总结
2017/09/01 PHP
laravel 使用事件系统统计浏览量的实现
2019/10/16 PHP
TNC vs IO BO3 第二场2.13
2021/03/10 DOTA
Javascript 获取滚动条位置等信息的函数
2009/09/08 Javascript
浏览器解析js生成的html出现样式问题的解决方法
2012/04/16 Javascript
jquery的选择器的使用技巧之如何选择input框
2013/09/22 Javascript
iframe里使用JavaScript控制主页转向的方法
2015/04/03 Javascript
z-blog SyntaxHighlighter 长代码无法换行解决办法(基于jquery)
2015/11/18 Javascript
JS奇技之利用scroll来监听resize详解
2017/06/15 Javascript
JavaScript类的继承方法小结【组合继承分析】
2018/07/11 Javascript
对node通过fs模块判断文件是否是文件夹的实例讲解
2019/06/10 Javascript
python socket网络编程步骤详解(socket套接字使用)
2013/12/06 Python
Python实现partial改变方法默认参数
2014/08/18 Python
详细解读Python的web.py框架下的application.py模块
2015/05/02 Python
简单谈谈Python中的反转字符串问题
2016/10/24 Python
Django自定义分页效果
2017/06/27 Python
Python实现抓取网页生成Excel文件的方法示例
2017/08/05 Python
使用python 和 lint 删除项目无用资源的方法
2017/12/20 Python
Python初学者需要注意的事项小结(python2与python3)
2018/09/26 Python
Empty test suite.(PyCharm程序运行错误的解决方法)
2018/11/30 Python
利用Pyhton中的requests包进行网页访问测试的方法
2018/12/26 Python
Python实现的拉格朗日插值法示例
2019/01/08 Python
python编写一个会算账的脚本的示例代码
2020/06/02 Python
pycharm 如何取消连按两下shift出现的全局搜索
2021/01/15 Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
2021/01/23 Python
深入浅析CSS3中的Flex布局整理
2020/04/27 HTML / CSS
Michael Kors美国官网:美式奢侈生活风格的代表
2016/11/25 全球购物
日本化妆品植村秀俄罗斯官方网站:Shu Uemura俄罗斯
2020/02/01 全球购物
校庆筹备方案
2014/03/30 职场文书
信用社主任竞聘演讲稿
2014/05/23 职场文书
个人遵守党的政治纪律情况对照检查材料
2014/09/26 职场文书
2015年高校教师个人工作总结
2015/05/25 职场文书
大学生村官工作心得体会
2016/01/23 职场文书
教你在 Java 中实现 Dijkstra 最短路算法的方法
2022/04/08 Java/Android