1.div布局在ie瀏覽器和chrome瀏覽器,firefox瀏覽器不同,不如在div里面嵌套3個div,分別左中右,左邊div的pading和margin在ie8以上都是幾乎相同,ie8以下做內邊距x2,在中間的div在chrome和fierfox中默認在左邊div的右邊,而ie缺不是,解決這個問題設置一下左浮動就可以解決。
?
2.一個ul便簽,如果設置左浮動,比如li>5,便簽如果設置為水平顯示,li由左往右,如果設置右浮動,就是從右往左。比如一個導航欄,
首頁 購買記錄 關于 ??這是左浮動
關于 購買記錄 首頁 ??這是右浮動
?
3.比如一個便簽<p>全面一行都會空兩個空格,空格可以用&nbps;但是每個瀏瀏覽器的空格距離不相同,ie瀏覽器距離比較大,所有調兼容性最好不要用&nbps;有縮進,用css控制縮進,text-indent:2em;空兩個字體的空間,很靈活,無論字體多大都是兩個字體的距離,只是在首行空兩個字體距離。
?
?
4.一般兩個模塊,左右的外邊距會合并,而上下的外邊距會取其中的最大值。就如左邊模塊的margin-right=10px,右邊模塊的margin-left=10px,他們之間的距離就為20px;如果上模塊的margin-bottom=10px,下模塊的margin-top=20px,則兩個模塊的距離為20px,取最大那個。(內邊距不能為負值,外邊距可以為負值)一般都把所有便簽的內外邊距清空,因為每個瀏覽器的默認值的不同。做兼容性更家容易。一般在css文件中定義 *{padding=0px;margin=0px;}
?
5.塊級元素比如<p></p>默認寬度為100%,所以要用選擇器來改變默認值。水平居中一半不用align=“center”,新瀏覽器都拋棄,一半用css控制 margin=任意px,auto;就水平居中了。
?
?
6.Ie6不支持display:inline-block,一般不用。
?
7.父級div管不著有浮動的子div,溢出,為了解決這個問題,一般在父級div加上,overflow:hidden;
?
8.因為scr是行內塊級元素,所以不能用margin:0px,auto(只能用于塊級元素);居中,若要使他居中,轉化成塊級元素 diaplay:block;
?
9.相對定位和絕對定位
有定位屬性默認層級都為0. z-index,如果都沒有定義層級,后來者居上。
相對定位一般是模塊當前位置。
絕對定位是相對于最近有定位父級的模塊進行定位。
(z-index可以實現 許愿墻 )
(z-index=-1,那么里面的東西點不了,)
?
10.display:none;隱藏,位置不存在
??Visibility:hidden;隱藏,位置還存在
?
11.css2設置透明度,w3c用opacity:0-1;
?Ie用filter:alpha(opacity=0-100);
一般做兼容兩個一起寫
?
12.li {list-style-type:none;}取消li下的小圓點。一般用來做導航。·
?
13.有時候在ie瀏覽器加入背景圖沒效果,但是火狐和谷歌就可以正常顯示,試試把png轉化成jpg試試。
?
14.總結用css3的特性只能在ie9以上的瀏覽器使用,如果要求ie9以下的瀏覽器,請放棄css3,不然你調兼容的時間比你寫代碼的時間還要多,一般國外都已經放棄用ie9以下的瀏覽器,但是中國還用一些林婉不顧的老頑童用xp,淘寶都準備拋棄ie8以下的瀏覽器。給開發者建議,做一個網頁需要負責任,有些官方的網頁只能用ie打開,那效果不堪一看,連剛剛寫前段網頁的都能寫出來,代碼就像不是程序員寫的,我看過廣州市某個官方圖書館的官網,看完我感覺沒愛了。其實兼容是靠經驗的。多用火狐調試器看看自己的布局,花點時間,就能調出,一半ie下默認的值,你只要重置一下就ok,還有div的位置不相同,設置一下float就行,float不行就用定位,慢慢琢磨,以后開發遇到問題就能及時發覺,以上的都是我記得的兼容方法,有好多沒有寫出來。但我遇到問題我懂怎樣解決,百度不是萬能,希望自己能解決問題。一般代碼不用百度,用google,最好能看懂英文,stack overflow
和github都有很多解決方法,英文不行可以下載個翻譯器,真心有用的,