搜尋
首頁web前端css教學瀏覽器相容解決FF/IE6/IE7背景專用CSS HACK_經驗交流

自從網路開始的那一刻起,各瀏覽器間的爭鬥就沒有停止過。當然其中最苦的就是網頁製作人員了,為了達到使用者體驗以及可用性的標準,不得不在多個瀏覽器上為統一效果而奔波。真希望哪一天FF可以一統天下,雖然現在還是IE的大天下。特別是微軟最新發布的IE7瀏覽器,其CSS的兼容性確實為一些網頁製作人員添加了一個沉重的新負擔。
為了讓各瀏覽器有相同的顯示效果,我們只好用到CSS HACK。當然在這篇文章中我們只談現在使用率最高的IE6和FF,以及將來可能會成為主流的IE7的CSS HACK,至於IE6以下版本已OP、SF在這此先不詳細說明。新手看了這片文章一定會有所收穫,而高手們路過一下就可以了,呵呵!

方案一
先來看看下面的CSS程式碼:

background-color:orange; 
*background-color:blue!important; 
*background- color:red;


[​​Ctrl A 全選注:如需引入外部Js需刷新才能執行]

下面我簡單解釋一下各瀏覽器怎樣理解這三個屬性: 在FF下,第2、3個屬性不認識,其中第2個屬性如果只是加了!important的話FF一定認識的,但因為前面又加了個*,所以不認識了(僅IE7認識) 。所以它讀的是background-color:orange;
在IE7下,第1、2、3個屬性IE7雖然都認識,但!important表示的是優先,所以它讀的是*background-color:blue !important;
在IE6下,第2個屬性不認識,第1、3個屬性都認識,但因為第3個屬性覆蓋掉第1個屬性,所以IE6最終讀取的*background-color: red。

方案二
先來看看下面的CSS程式碼:
複製程式碼 程式碼如下:

背景顏色:橘色;
*背景顏色:藍色;
_背景顏色:紅色;


[​​Ctrl A 全選注:如需引入外部Js需刷新才能執行]

下面我簡單解釋一下各個器如何瀏覽這三個屬性: 在FF下,第2、3個屬性FF不認識,所以它讀的是background-color:orange;
在IE7下,第3個屬性IE7不認識,所以它讀取第1、2個屬性,又因為第2個屬性覆蓋了第1個屬性,所以IE7最終寫入的是第2個屬性*背景顏色:藍色;
在IE6下,這3個屬性IE6都認識,所以3個屬性都可以讀取,又因為第3個屬性覆蓋掉前2個屬性,所以IE6最終讀取的是_background-color:red

其中IE的讀取屬性一定要知道,這對於初學者使用CSS HACK是非常關鍵的,瀏覽器讀取屬性是從上至下的,同樣的屬性它的設定最後一個讀取到的才是在瀏覽器上顯示的。另外在方案中的兩種「_」只有IE6才知道的,可見其大胃王的感覺。另外!重要的不同,打破了從上至下的讀取習慣,使用的是優先顯示。而在上述兩個方案中可以看出FF除了CSS書寫和!重要的外部其他都不認識,標準就是統一的。

在這裡不是慫恿大家鼓勵使用CSS HACK,只是別看到其他人寫的CSS程式碼中有這些HACK不知道是什麼意思。畢竟用CSS HACK來解決瀏覽器間的兼容不長的方法,如果有新版本瀏覽器的出現說不拿你原來寫的CSS HACK怎麼樣,IE7就是個很好的例子。盡量達到零使用CSS HACK說或少使用,因為佈局結構是很好可以解決好的這些問題,這樣的網站也大有人在。
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
利用CSS怎么创建渐变色边框?5种方法分享利用CSS怎么创建渐变色边框?5种方法分享Oct 13, 2021 am 10:19 AM

利用CSS怎么创建渐变色边框?下面本篇文章给大家分享CSS实现渐变色边框的5种方法,希望对大家有所帮助!

css ul标签怎么去掉圆点css ul标签怎么去掉圆点Apr 25, 2022 pm 05:55 PM

在css中,可用list-style-type属性来去掉ul的圆点标记,语法为“ul{list-style-type:none}”;list-style-type属性可设置列表项标记的类型,当值为“none”可不定义标记,也可去除已有标记。

css与xml的区别是什么css与xml的区别是什么Apr 24, 2022 am 11:21 AM

区别是:css是层叠样式表单,是将样式信息与网页内容分离的一种标记语言,主要用来设计网页的样式,还可以对网页各元素进行格式化;xml是可扩展标记语言,是一种数据存储语言,用于使用简单的标记描述数据,将文档分成许多部件并对这些部件加以标识。

css3怎么实现鼠标隐藏效果css3怎么实现鼠标隐藏效果Apr 27, 2022 pm 05:20 PM

在css中,可以利用cursor属性实现鼠标隐藏效果,该属性用于定义鼠标指针放在一个元素边界范围内时所用的光标形状,当属性值设置为none时,就可以实现鼠标隐藏效果,语法为“元素{cursor:none}”。

css怎么设置i不是斜体css怎么设置i不是斜体Apr 20, 2022 am 10:36 AM

在css中,可以利用“font-style”属性设置i元素不是斜体样式,该属性用于指定文本的字体样式,当属性值设置为“normal”时,会显示元素的标准字体样式,语法为“i元素{font-style:normal}”。

rtl在css是什么意思rtl在css是什么意思Apr 24, 2022 am 11:07 AM

在css中,rtl是“right-to-left”的缩写,是从右往左的意思,指的是内联内容从右往左依次排布,是direction属性的一个属性值;该属性规定了文本的方向和书写方向,语法为“元素{direction:rtl}”。

css怎么实现英文小写转为大写css怎么实现英文小写转为大写Apr 25, 2022 pm 06:35 PM

转换方法:1、给英文元素添加“text-transform: uppercase;”样式,可将所有的英文字母都变成大写;2、给英文元素添加“text-transform:capitalize;”样式,可将英文文本中每个单词的首字母变为大写。

怎么设置rotate在css3的旋转中心点怎么设置rotate在css3的旋转中心点Apr 24, 2022 am 10:50 AM

在css3中,可以用“transform-origin”属性设置rotate的旋转中心点,该属性可更改转换元素的位置,第一个参数设置x轴的旋转位置,第二个参数设置y轴旋转位置,语法为“transform-origin:x轴位置 y轴位置”。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具