link&&@import的区别

目录

1. 讲解:

3. @import

4. 区别:

5. link和@impor的详细区别

    1. 从属关系

    2. 加载顺序

    3. 兼容性问题

    4. DOM可控性

    5. 权重问题(有争议)


1. 讲解:

页面中使用CSS的方式主要有3种:

行内添加定义style属性值,页面头部内嵌调用和外面链接调用,其中外部引用有两种分别是:link和@import。

<link rel="stylesheet" rev="stylesheet" href="CSS文件" type="text/css" media="all" />

3. @import


<style type="text/css" media="screen"> 
    @import url("CSS文件"); 
</style> 

4. 区别:

link属于html标签。@import在css中使用表示导入外部样式表;
页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载;
import只在IE5以上才能识别,而link是HTML标签,无兼容问题;
link方式的样式的权重 高于@import的权重;
link 支持使用javascript改变样式 (document.styleSheets),后者不可

5. link和@impor的详细区别

    1. 从属关系

        1.1  link:link是HTML提供的标签,不仅可以加载CSS,还可以定义rel等属性
        1.2  @import:@import是css提供的语法,只有导入样式表的作用

    2. 加载顺序

        2.1   link:link在页面加载时CSS同时被加载
        2.2  @import:引入的CSS要等页面加载完毕后再加载

    3. 兼容性问题

        3.1  link是HTML提供的语法,不存在兼容性问题
        3.2  @import是css2.1提供的语法,ie5以上才兼容

    4. DOM可控性

        js控制DOM时,可以通过插入link标签来改变样式,不能通过@import改变

    5. 权重问题(有争议)

        link标签引入的样式权重大于@import标签

上一篇:本地包调试 :npm link


下一篇:【源码共读】Python 标准模块 collections 中 OrderedDict 类详解