打开网站样式加载问题

CSS 外部样式导入的两种方式

两者都是外部引入CSS的方式,那么二者有什么区别呢?

  1. @import是CSS提供的语法规则,只有导入样式表的作用;link是HTML提供的标签,不仅可以加载CSS文件,还可以定义RSS,rel连接属性等;
  2. 加载页面时,link引入的CSS被同时加载,@import引入的CSS将在页面加载完毕后加载;
  3. link标签作为HTML元素,不存在兼容性问题,而@import是CSS2.1才有的语法,故老版本浏览器(IE5之前)不能识别;
  4. 可以通过JS操作DOM,来插入link标签改变样式;由于DOM方法是基于文档的,无法使用@import方式插入样式;
    打开网站样式加载问题
    也就是当需要加载元素很多时,使用link的话会再渲染结束后才显示出来,虽然会慢些,但是显示效果会好。
    而是用@import导入外部样式时会先加载html内容结构,然后再去渲染页面显示,这样就会出现上述的样式加载缓慢问题,好处是不会给用户卡死的感觉。