外部引用CSS中 link與@import的區別:
link屬于XHTML標簽,而@import完全是CSS自己提供的一個語法。
1.加載內容。
link標簽除了可以加載CSS外,還可以做很多其它的事情,比如定義RSS,定義rel連接屬性等,@import就只能加載CSS了。
2.加載順序的差別。
當一個頁面被加載的時候(就是被瀏覽者瀏覽的時候),link引用的CSS會同時被加載,而@import引用的CSS 會等到頁面全部被下載完再被加載。
所以有時候瀏覽@import加載CSS的頁面時開始會沒有樣式(就是閃爍),網速慢的時候更明顯。
3.兼容性的差別。
由于@import是CSS2.1里提出的,所以老的瀏覽器不支持,@import只有在IE5以上的才能識別。而link標簽無此問題。
4.使用dom控制樣式時的差別。
當使用javascript控制dom去改變樣式的時候,只能使用link標簽,因為@import不是dom可以控制的。
@import可以在css中再次引入其他樣式表。比如可以創建一個主樣式表,在主樣式表中再引入其他的樣式表,比如:
main.css
@import “sub1.css”;
@import “sub2.css”;
sub1.css
p {color:red;}
sub2.css
.myclass {color:blue}
這樣更利于修改和擴展。但同時這樣做有一個缺點,會對網站服務器產生過多的HTTP請求,以前是一個文件,而現在卻是兩個或更多文件 了,服務器的壓力增大,瀏覽量大的網站還是謹慎使用。