让IE6浏览器支持fixed的方法

[复制链接]
查看325 | 回复0 | 2019-12-20 22:57 | 显示全部楼层 |阅读模式

                                核心提示:在主题制作或者修改中一些元素要设置 为随页面滚动的效果,通常的做法是加上fixed属性,或者干脆用js实现这个功能。                            .                                                                            在主题制作或者修改中一些元素要设置 为随页面滚动的效果,通常的做法是加上fixed属性,或者干脆用js实现这个功能。

  不过对于懒得去后台更新js文件的同学来说,这不是个好办法,或者对于还未引入js的同学,这更不是好办法。但是不用的话在IE6下会无效,这个经典到目前访问量的半数以上的浏览器版本是直接无视fixed的(当然还有其他若干问题,所以希望更新或扔掉该浏览器)。

  关于这个问题的解决办法,我之前的做法一直是用_position:absolute来暂时修订,当然这么做产生的效果和想象中的差距很大。最近发 现一个方法来修正IE6的fixed效果,如下:

  _top:expression(documentElement.scrollTop + 数值 + quot;pxquot;)

  也是一个简单的hack,对于不想引入JS又迫切希望使用fixed属性的人来说,确实是个好办法。

  More:

  Q:有时候好像使用document.body.scrollTop来获取滚动条滚动的长度,结果滚动后得到的也是0,为什么改用 document.documentElement.scrollTop就可以了?

  A:可以查看一下源代码,如果没有

  .lt;!doctype html PUBLIC quot;-//W3C//DTD XHTML 1.0 Transitional//ENquot;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtdquot;.gt;

  这一句那么可以用document.body.scrollTop,否则只能用 document.documentElement.scrollTop。

  原因:在标准w3c下,document.body.scrollTop恒为0,需要用 document.documentElement.scrollTop来代替;document.documentElement.scrollTop 中documentElement 对应的是 html 标签;document.body.scrollTop 中 body 对应的是 body 标签。
                                                                                    





上一篇:浏览器要怎么阻止弹出窗口
下一篇:IE新开窗口最大化最简单有效的方法
【玉璞集 YUPUG.COM】