对于如何使用css的样式,主要有三种: 内联 ,外联,内嵌(也可称为行内)。其中外联样式的引入有两种:link 和 @import 。在许多面试的地方也会问到两者的区别,到底有什么不同的,我大概整理了一下:
1.先来看一下两者引入的方式:
(1).HTML代码 :
(2).@import:
2.区别:
(1).从属关系的区别:
link是html的标签,除了加载css文件,还可以定义RSS ,rel连接属性等 ; @import 是css提供的语法规则,只能加载css样式,只有导入样式表的作用。
(2)加载顺序的区别:
link引入css时,在页面载入时同时加载;@import引入的css将在页面加载完毕后被加载。
(3)兼容性的区别:
link是html标签,无兼容性的问题 ; @import是在css2.1里提出的,低版本浏览器不兼容, 在 IE5+才能识别。
(4)DOM可控性区别:
link支持使用Javascript控制DOM去改变样式;而@import不支持。
(5).权重区别(该项有争议,可以自己查找一下)
link引入的样式权重大于@import引入的样式。
ps:本人建议使用link标签,慎用@import方式。这样可以避免考虑@import的语法规则和注意事项, 避免产生资源文件下载顺序混乱和http请求过多的烦恼。
刚刚学习,才疏学浅,望各位大神提出宝贵已经。。。。