expression解決IE6下固定定位的相容

2022-03-08 22:28:46 字數 1054 閱讀 7902

本文所使用的技巧是用了一條 internet explorer 的 css 表示式 (expression) 。你不可以直接使用該表示式,因為它可能會因為快取而不更新。解決這一點的最簡單的方式是使用 eval 包裹你的語句。

如何解決「振動」的問題?

顯然 ie 有乙個多步的渲染程序。當你滾動或調整你的瀏覽器大小的時候,它將重置所有內容並重新渲染頁面,這個時候它就會重新處理 css 表示式。這會引起乙個醜陋的「振動」 bug ,在此處固定位置的元素需要調整以跟上你的(頁面的)滾動,於是就會「跳動」。

解決此問題的技巧就是使用 background-attachment:fixed 為 body 或 html 元素新增乙個 background-image:url(about:blank) 。這就會強制頁面在重畫之前先處理 css 。因為是在重畫之前處理 css ,它也就會同樣在重畫之前首先處理你的 css 表示式。這將讓你實現完美的平滑的固定位置元素! css**:

/*

讓修復ie6 position:fixed不可用的bug!

*//*

頭部固定

*/.fixed-top

/*底部固定

*/.fixed-bottom

/*左側固定

*/.fixed-left

/*右側固定

*/.fixed-right

/*上面的是除了ie6的主流瀏覽器通用的方法

*//*

修正ie6振動bug

*/* html, * html body

/*ie6 頭部固定定位

*/* html .fixed-top

/*ie6 右側固定定位

*/* html .fixed-right

/*ie6 底部固定定位

*/* html .fixed-bottom

/*ie6 左側固定定位

*/* html .fixed-left

總結:

html

/*你的圖層

*/.positionfixedlayer

demo:

expression解決IE6下固定定位的相容

本文所使用的技巧是用了一條 internet explorer 的 css 表示式 expression 你不可以直接使用該表示式,因為它可能會因為快取而不更新。解決這一點的最簡單的方式是使用 eval 包裹你的語句。如何解決 振動 的問題?顯然 ie 有乙個多步的渲染程序。當你滾動或調整你的瀏覽器...

解決IE6,邊框問題

ie6是乙個讓人蛋疼而又無奈的瀏覽器,這次不經意間發現了乙個bug的解決發放,給大家分享一下 直接中部 此舉加border 1px 顏色 solid 時,瀏覽器全部顯示正常 如果換成border none 時,此時除了ie6其他瀏覽器都正常,邊框顯示沒了。ie6還有邊框,如果用上 border no...

解決IE6下Position fixed問題

解決此問題的要點主要有 1 容器要有乙個背景 2 設定它的滾動屬性為fixed。3 用ie特有的e xpression方法計算出元素的top,left,right,bottom的量。程式設計客棧 script language j ascript ffcod delpost.runcode1 val...