首先看淘宝网的使用方式:
<style type="text/css" media="screen">
@import url("http://www.taobao.com/home/css/global/v2.0.css?t=20070518.css");
</style>
@import url("http://www.taobao.com/home/css/global/v2.0.css?t=20070518.css");
</style>
而更多的网站的使用方式:
<link rel="stylesheet" rev="stylesheet" href="default.css" type="text/css" media="all" />
但是像大型的Google,百度等网站是直接写在网页上的
他们的区别是:
1)使用@import和link便于维护,但如果我们的网速比较慢的时候,可能会出现页面排版混乱,没有正常显示
2)@import和link的作用是差不多的,不过他们服务的对象是不一样的,@import是服务CSS的,而link是服务于当前页面的
3)link属于XHTML标签,而@import完全是CSS提供的一种方式。
4)link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加载CSS了。
5)当一个页面被加载的时候(就是被浏览者浏览的时候),link引用的CSS会同时被加载,而@import引用的CSS 会等到页面全部被下载完再被加载。所以有时候浏览@import加载CSS的页面时开始会没有样式(就是闪烁),网速慢的时候还挺明显。
6)由于@import是CSS2.1提出的所以老的浏览器不支持,@import只有在IE5以上的才能识别,而link标签无此问题。
7)使用dom控制样式时的差别。当使用javascript控制dom去改变样式的时候,只能使用link标签,因为@import不是dom可以控制的。