在平时导入css方法比较多的就是Link,引用外部的样式。其实还有一个@import。这个用的比较少,所以去网上查了查资料,结合网上的材料总结如下:
先说结论:
- 建议使用link标签,不使用@import的方式。
为什么这样说呢?
这样可以避免@import的语法规则和注意事项,避免产生资源文件下载顺序混乱和http请求过多的烦恼。
他们的区别:
- 使用上的区别
@import是CSS提供的语法规则,只有导入样式的作用
link的方式,不仅可以加载css文件,也可以指定type类型,RSS,rel等连接属性。
在面试时,可能还会问你,那么在使用link的时,除了type,你还使用过哪些标签呢?
那么这里可以回答的是,以下这张图说明了一切。
link与@import之间,link的使用要强于import。
2.加载顺序的区别
在加载页面方面,使用link的引用的文件,被同时加载;@import引用的文件,要在页面加载完毕后才会被加载。
3.兼容性区别
link一般不考虑兼容性;@import是css2.1才有的语法,那么只有IE5才能识别,不过换句话来说,现在项目的开发一般就兼容ie9以上。
4.dom的可操控性
我们通常通过js来改变dom。直接import的方式插入样式,无法改变dom的样式,而通过link的方式,可以通过插入标签来来改变样式。
5.关于权重
网上有说link的权重要大于@import。这个比较有争议性,验证后发现并没有这么一说。