检测是否支持position:fixed

不喜欢浏览器嗅探,模仿IE6的UA的浏览器太多了

复制代码
/*
* 使用如下结构:
* <div style="position: absolute; top: 200px;"> <== outer
* <div style="position: fixed; top: 100px;"></div> <== inner
* </div>
*
* 如果浏览器支持fixed,由于fixed是相对于document定位的,因此无论body样式如何,top始终是100px
* 如果浏览器不支持fixed,被解释为static,则inner和top值无效,计算出来的inner的绝对top与outer相同
*/
var outer = document.createElement('div'),
inner
= document.createElement('div'),
result
= true;

outer.style.position
= 'absolute';
outer.style.top
= '200px';

inner.style.position
= 'fixed';
inner.style.top
= '100px';

outer.appendChild(inner);
document.body.appendChild(outer);

if (inner.getBoundingClientRect && 
inner.getBoundingClientRect().top == outer.getBoundingClientRect().top) {
result
= false;
}
复制代码
posted @   Gray Zhang  阅读(834)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
点击右上角即可分享
微信分享提示