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

2021-09-06 06:26:10 字數 977 閱讀 8237

本文所使用的技巧是用了一條 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

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...