css相容性問題

2021-10-04 16:07:32 字數 1280 閱讀 3224

先來談談css hack

我們為了讓頁面形成統一的效果,要針對不同的瀏覽器或不同版本寫出對應可解析的css樣式,所以我們就把這個針對不同瀏覽器/版本而寫css的過程叫做 css hack.

css hack主要有三種:ie條件注釋法、css屬性字首法、選擇器字首法。

(1)ie條件注釋法,即在正常**之外新增判別ie瀏覽器或對應版本的條件注釋,符合條件的瀏覽器或者版本號才回執行裡邊的**。

(2)css屬性字首法,即是給css的屬性新增字首。比如 * 可以被ie6/ie7識別,但 _ 只能被ie6識別,ie6-ie10都可以識別 「\9」,ie6不能識別!important firefox不能識別 * _ \9

可以先使用「\9"標記,將ie分離出來,再用」*"分離出ie6/ie7,最後可以用「_」分離出ie6

.type所以可以按著優先順序就能給特定的版本捎上特定顏色

可以先使用「\9"標記,將ie分離出來,再用」*"分離出ie6/ie7,最後可以用「_」分離出ie6

.type所以可以按著優先順序就能給特定的版本捎上特定顏色

1.不同瀏覽器的標籤預設的margin和padding不一樣。*

2.chrome 中文介面下缺省會將小於 12px 的文字強制按照 12px 顯示,可通過加入 css 屬性 -webkit-text-size-adjust: none; 解決。

豪豪豪10px

3.ie6下,如果給元素設定float,同時給float同一方向設定margin值,則ie6下表現出雙倍的邊距

.demo

4.(16)ie6下div高度無法小於10px

比如定義一條高2px的線條,ff和ie7都正常

但ie6就是10px

解決的辦法有兩種:新增overflow屬性或設定fontsize大小為高度大小 如:

&nbps;

5.css控制透明度問題:一般就直接 opacity: 0.6 ; ie就 filter: alpha(opacity=60) 但在ie6下又有問題,所以又得弄成 filter:progid:dximagetransform.microsoft.alpha(style=0,opacity=60); 6.滑鼠的手勢也有問題:firefox的cursor屬性不支援hand,但是支援pointer,ie兩個都支援;所以為了相容都用pointer 7.很多時候可能會納悶超連結訪問過後 樣式就混亂了,hover樣式不出現了。其實主要是其css屬性的排序問題。一般來說,最好按照這個順序:l-v-h-a 簡單的記法是 love hate

a:link{} a:visited{} a:hover{} a:active{}

piczoom相容性問題 相容性問題

1.文字本身的大小不相容。同樣是font size 14px的宋體文字,在不同瀏覽器下佔的空間是不一樣的,ie下實際佔高16px,下留白3px,ff 下實際佔高17px,上留白1px,下留白3px,opera下就更不一樣了。解決方案 給文字設定 line height 確保所有文字都有預設的 lin...

css相容性問題集

ie相容性hack 6減 7乘 8除 ie6 7 8 input textarea等輸入框,在蘋果ios顯示有內陰影 圓角邊框 按鈕漸變透明bug圓角 限制input type file 上傳檔案型別 type file value 上傳 效果如下 value 上傳 或 type file name...

css字型大小相容性問題

記錄乙個在開發過程中遇到的問題,專案資料視覺化大屏介面,使用的是rem布局,在完成時發現在ie瀏覽器和火狐瀏覽器字型顯示正常,谷歌瀏覽器字型偏大並且換行,後來發現是使用rem換算成px時字型小於12px,在谷歌瀏覽器中最小字型為12px導致的。解決方法 將內容用span包裹,將字型設定為乙個大於12...