CSS常用瀏覽器相容調整小結

2022-09-27 12:27:13 字數 2312 閱讀 5244

頁面亂的原因是因為ie6認為乙個div超寬了,所以把本應float;right的div擠了下去。而如果設定為ie6下顯示正常的寬度,則在ie7和firefox下看頁面就會少了一塊一樣,也很彆扭….

怎麼辦?用css hack 來改寫css**

改寫前:***. yyy: (當設為ie7和firefox下顯示正常的600px時

,ie6下會錯位,改為590px,則ie6下正常,ie7和firefox下顯示不完美)

改寫後: ***. yyy

(firefox不認識*和_,而ie都認識*,ie7不支援_,ie6支援_)

順序千萬不要亂,因為當出現重複定義時,瀏覽器預設按最後一下渲染,所以一

定要先正常,再*,最後_。

這樣firefox讀取時只看到了正常的程式設計客棧定義,而ie都能看到第二個*的定義,於是忽

略第乙個正常的定義,程式設計客棧而ie中因為ie7不再支援_,所以按照第乙個帶*號的執行,ie6支援_,所

以認為帶*後的也是重複定義,予以忽略,執行最後乙個定義。

有人喜歡用!important來進行css hack,但我覺得!important寫起來太長了,不

如*和_簡單直觀。

只要記住ie7=*,ie6=_,然後按照先firefox後ie7,最後ie6的順序進行程式設計客棧編寫,

一般就可以保證大部分使用者瀏覽正常了。 **:收集整理於網際網路

ie下很多地方可以省略一些層定義的浮動屬性,但是ff不行,必須每個個層都寫清楚,幾個div層水

平排列的時候,ie6中必須要加display:inline;,不然前端會出現雙倍間距,而ff中則加不加

display都顯示正常.這些都是由瀏覽器預設值的不同而引起的,你看到那些大站的布局在各瀏覽

器中都顯示正常,是因為他們把這些預設有區別的地方都定義清楚了.

下面的相容要點引自網際網路

css對瀏覽器的相容性具有很高的要求,通常情況下ie和firefox(簡稱ff)存在很大的解析差異,

這裡介紹一下相容要點。

常見的相容問題:

1.doctype影響css處理

2.firefox火狐:div設定margin-left,margin-right為auto時已經居中,ie不行

3.firefox火狐:body設定text-align時,div需要設定margin:auto(主要是margin-left,margin-

right)方可居中

4.firefox火狐:設定padding後,div會增加height和width,但ie不會,故需要用!important多設一

個height和width

5.firefox火狐:支援!important,ie則忽略,可用!important為firefox火狐特別設定樣程式設計客棧式

6.div的垂直居中問題:vertical-align:middle;將行距增加到和整個div一樣高line-

height:200px;然後插入文字,就垂直居中了。缺點是要控制內容不要換行

7.cursor:pointer可以同時在iefirefox火狐中顯示游標手指狀,hand僅ie可以

8.firefox火狐:鏈結加邊框和背景色,需設定display:block,同時設定float:left保證不換行。

參照menubar,給a和menubar設定高度是為了避免底邊顯示錯位,若不設height,可以在menubar中

插入乙個空格。

9.在mozillafirefox和ijksqtayce中的box模型解釋不一致導致相差2px解決方法:

div

注意這兩個margin的順序一定不能寫反,據阿捷的說法!important這個屬性ie不能識別,但別的

瀏覽器可以識別。所以在ie下其實解釋成這樣:

div

重複定義的話按照最後乙個來執行,所以不可以只寫margin:xxpx!important;

10.ie5和ie6的box解釋不一致

ie5下

div

div的寬度會被解釋為300px-10px(右填充)-10px(左填充)最終div的寬度為280px,而在ie6和其

他瀏覽器上寬度則是以300px+10px(右填充)+10px(左填充)=320px來計算的。這時我們可以做如

下修改

div

關於這個/**/是什麼我也不太明白,只知道ie5和firefox都支援但ie6不支援

11.ul標籤在mozilla中預設是有padding值的,而在ie中只有margin有值所以先定義

ul就能解決大部分問題

本文標題: css常用瀏覽器相容調整小結

本文位址:

瀏覽器CSS相容

一 important 在ie6及ff中的使用 box1 box1 important是說這個設定有優先順序,ie碰到 important不會出錯只是忽略他的功能,假如後面又設定了width,ie會以最後設定的 width為準,假如後面再沒有其它設定,則會用當前這個值,也就是前面的 importan...

手機瀏覽器css相容

pixel與point比值稱為device pixel ratio,普通裝置都是1,iphone 4是2,有些android機型是1.5。那麼 webkit min device pixel ratio 2可以用來區分iphone 4 4s 5 和其它的手機 iphone4 4s的解析度為640 9...

CSS相容不同瀏覽器

製作頁面的時候,由於瀏覽器的不同,對css的解析也會有所不同,從而達不到我們預期想要的頁面效果,這個時候我們就需要針對不同的瀏覽器去寫不同的css,讓它能夠同時相容不同的瀏覽器。css hank。原始 歡迎光臨!減號是ie6專有的hack 9 ie6 ie7 ie8 ie9 ie10都生效 0 ie...