推荐使用link

强烈建议使用link标签,慎用@import方式。 这样可以避免考虑@import的语法规则和注意事项,避免产生资源文件下载顺序混乱和http请求过多的烦恼。

区别

1.从属关系区别

@import是 CSS 提供的语法规则,只有导入样式表的作用;link是HTML提供的标签,不仅可以加载 CSS 文件,还可以定义 RSS、rel 连接属性等。

2.加载顺序区别

加载页面时,link标签引入的 CSS 被同时加载;@import引入的 CSS 将在页面加载完毕后被加载。

3.兼容性区别

@import是 CSS2.1 才有的语法,故只可在 IE5+ 才能识别;link标签作为 HTML 元素,不存在兼容性问题。

4.DOM可控性区别

可以通过 JS 操作 DOM ,插入link标签来改变样式;由于 DOM 方法是基于文档的,无法使用@import的方式插入样式。

5.权重区别

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

同等权重CSS样式的优先级由高到低的排序是:行内样式、内联样式、外联样式、导入样式 。如果外联样式和导入样式都有一个div{color:XX},最终的div样式是外联样式中所定义div样式 。

举例:分别给div行内样式、内联样式、外联样式、导入样式,看看他最终呈现什么效果。

<!DOCTYPE html><html><head><meta charset="UTF-8"><title></title><style type="text/css"> @import url("css/red.css");div{background: yellow;}</style><link rel="stylesheet" type="text/css" href="css/green.css"/></head><body><div style="background: purple;width: 150px;height: 150px;">have a nice day </div></body></html>
复制代码

由图可见,div最终呈现的是紫色,而紫色是行内样式设置的,它的优先级最高。接下来继续看,如果是内联样式和导入样式,它又会是什么效果呢?

<!DOCTYPE html><html><head><meta charset="UTF-8"><title></title><style type="text/css"> div{background: yellow;}  @import url("css/red.css");   </style></head><body><div style="width: 150px;height: 150px;">have a nice day </div></body></html>复制代码

显而易见,div最终呈现黄色,黄色是内联样式,它的优先级高于导入样式。

总结:以上讲述了CSS中的link和import的区别,总的来说,最好不要使用improt导入式,如果import加载的样式比较大,容易出现加载延迟,甚至有闪屏的情况。就目前来看,小型的网站还是推荐使用link导入,当然如果将来我们需要把CSS进行模块化管理,那会用到@import,这个还需要看情况的。

引用方式

<link  rel="stylesheet"  href="../css/123.css" /><style type="text/css">   @import url("css/green.css");</style>
复制代码

     

转载于:https://juejin.im/post/5c8a040e6fb9a049f5720513

link和@import区别相关推荐

  1. 添加css的方式:link与@import区别

    如何在html中添加css? 在html中设置css共有三种方式,分别是: 行内式 内嵌式 导入式-link 导入式-@import 1.行内式.即在html标签中的style属性中设置css,值得注 ...

  2. 网页编程html link,Web--CSS控制页面(link与import方式区别)详解

    先了解: [1]       "Table"和"DIV"这两个网页元素诞生的目的不同,首先Table诞生的目的是为了存储数据,而DIV诞生的目的就是为了架设页面 ...

  3. 外部引用CSS中 link与@import的区别

    这两天刚写完XHTML加载CSS的几种方式,其中外部引用CSS分为两种方式link和@import. 本质上,这两种方式都是为了加载CSS文件,但还是存在着细微的差别. 差别1:老祖宗的差别.link ...

  4. UI设计师必知:link和@import引用css文件方法的区别

    <link>元素所参考的样式用户可以自由的选择加以改变,而导入的样式表单就自动的与剩下的样式表融合在一起了 CSS与HTML文档结合的4中方法: 1 使用<link>元素链接到 ...

  5. [html] 页面导入样式时,使用link和@import有什么区别?

    [html] 页面导入样式时,使用link和@import有什么区别? 区别: 1.link是HTML标签,@import是css提供的. 2.link引入的样式页面加载时同时加载,@import引入 ...

  6. 前端学习(46):页面导入样式时,使用link和@import有什么区别?

    用法 import的写法 <style type="text/css">         @import url("a.css"):     < ...

  7. link引入html5,CSS引入方式 | link和@import的区别 — 生僻的前端考点

    link和@import的区别 HTML5学堂:CSS的引入方式有外部引入.页面头部书写.标签内联书写,其实还有@import的引入方式,但是现在基本被淘汰掉了.为了让大家了解到更多的知识,今天给大家 ...

  8. link和import的区别,src和href的区别,css hark 以及HTML5及css3的新增特性

    link和import的区别 link是标签浏览器会在一开始就渲染样式而import是引入会在最后引入 link是XHTML标签,无兼容问题:@import是在CSS2提出的,低版本的浏览器不支持 l ...

  9. 第29题:link与@import的区别

    题目 下列关于使用link和@import,说法不正确的是(B) A: 页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载 B: link.@import均支持 ...

  10. link和@import之间的区别

    link和@import都可以导入css样式,但是他们之间有什么区别? 区别: 1.link不仅可以导入样式表,还可以导入其他如如favicon,但@import只能导入样式表 2.link是XHTM ...

最新文章

  1. FreeRTOS介绍
  2. PaddleOCR加载chinese_ocr_db_crnn_modile模型进行中英文混合预测(Http服务)实践
  3. Centos下安装FTP并进行虚拟用户访问方式配置
  4. 《价值50亿的10句话》读后感(学生作业分享)
  5. linux环境下的连接器,Linux下连接器ld链接如何排序
  6. C# 面向对象版 Windows挖雷 v0.8 release 非FloodFill算法解
  7. Aspose.Cells使用总结大全
  8. ubuntu安装Redis+安装mysql(配置远程登录)+安装jdk+安转nginx+安转teamviewer+安装terminator+安装sublime
  9. php中join用法,PHP join()函数用法与实例讲解
  10. python语言分数等级转化_如何把分数转化成等级
  11. 3d标注_告别繁琐,浩辰3D「文本特征」让设计更智慧!
  12. Myeclipse学习总结(10)——MyEclipse2014导入项目时The project was not built since its build问题...
  13. VS2010 书签 工具的使用方法
  14. android本地图片,Android中ImageView实现选择本地图片并显示功能
  15. Bootstrap模态出现在背景下
  16. 超星考试浏览器_超星浏览器官方下载
  17. 火狐中国区linux无法同步,教大家火狐浏览器同步数据失败的几点原因
  18. AI后门检测论文翻译:Universal Litmus Patterns: Revealing Backdoor Attacks in CNNs
  19. skywalking 安装部署以及监控远程应用
  20. NYOJ - [第八届河南省程序设计大赛]Distribution(水题)

热门文章

  1. FLEX 与 VS 2008 利用 FluorineFx 开发快速配置演示
  2. 【生活相关】实验室专题研讨PPT模板说明备忘
  3. 红帽企业linux7 u盘安装,RedHat企业版7 “yum”重装 CentOS7 “yum”
  4. 2019写给对象的话_数组方法写给女友的一系列 JS 数组操作(建议收藏 | 内附思维导图)...
  5. css 布局什么时候用百分比_用手机拍视频学会这个布局方法,拍什么都好看
  6. Flink CDC + Hudi + Hive + Presto 构建实时数据湖最佳实践
  7. 安卓自定义列表dialog
  8. php alias 报错,PHP: class_alias - Manual
  9. java七武器系列_Java七武器系列多情环 --多功能Profiling工具 JVisual VM
  10. 华为慧通和华为区别_华为P30与华为P30 pro 的区别