这两天刚写完XHTML加载CSS的几种方式,其中外部引用CSS分为两种方式link和@import。

本质上,这两种方式都是为了加载CSS文件,但还是存在着细微的差别。

差别1:老祖宗的差别。link属于XHTML标签,而@import完全是CSS提供的一种方式。

link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加载CSS了。

差别2:加载顺序的差别。当一个页面被加载的时候(就是被浏览者浏览的时候),link引用的CSS会同时被加载,而@import引用的CSS会等到页面全部被下载完再被加载。所以有时候浏览@import加载CSS的页面时开始会没有样式(就是闪烁),网速慢的时候还挺明显(梦之都加载CSS的方式就是使用@import,我一边下载一边浏览梦之都网页时,就会出现上述问题)。

差别3:兼容性的差别。由于@import是CSS2.1提出的所以老的浏览器不支持,@import只有在IE5以上的才能识别,而link标签无此问题。

差别4:使用dom控制样式时的差别。当使用javascript控制dom去改变样式的时候,只能使用link标签,因为@import不是dom可以控制的。

大致就这几种差别了(如果还有什么差别,大家告诉我,我再补充上去),其它的都一样,从上面的分析来看,还是使用link标签比较好。

标准网页制作加载CSS文件时,还应该选定要加载的媒体(media),比如screen,print,或者全部all等。这个我到CSS高级教程中再给大家介绍。

注:

1,网友comehope在留言中提出了另一种区别。

差别5:@import可以在css中再次引入其他样式表,比如可以创建一个主样式表,在主样式表中再引入其他的样式表,如:

main.css
———————-
@import “sub1.css”;
@import “sub2.css”;

sub1.css
———————-
p {color:red;}

sub2.css
———————-
.myclass {color:blue}

这样更利于修改和扩展.

转载于:https://www.cnblogs.com/Ewin/archive/2008/07/26/1251975.html

外部引用CSS中 link与@import的区别相关推荐

  1. 爱创课堂每日一题八十九天- CSS中link和@import的区别是:

    Link属于html标签,而@import是CSS中提供的br/>在页面加载的时候,link会同时被加载,而@import引用的CSS会在页面加载完成后才会加载引用的CSS @import只有在 ...

  2. CSS中link与import差别

    [原文:http://bbs.blueidea.com/viewthread.php?tid=25904&page=] 差别1:老祖宗的差别.link属于XHTML标签,而@import完全是 ...

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

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

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

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

  5. herf、src和link与@import的区别

    前言 我们在开发页面的时候,有时候需要需要引用一些外部的资源,经常分不清一些链接,下面我们就来谈谈它们之间到底分别是什么,这样使用的时候就做到心中有数. 一.link和@import的区别 两者都是外 ...

  6. link和@import的区别?

    一.link和@import的区别? 1.1.link属于html标签,而@import是css提供的. 1.2.页面被加载时,link会同时被加载,而@import引用的css会等到页面被加载完再加 ...

  7. link和@import的区别:

    link和@import的区别: 1.从属关系区别 @import是 CSS 提供的语法规则,只有导入样式表的作用:link是HTML提供的标签,不仅可以加载 CSS 文件,还可以定义 RSS.rel ...

  8. css里dotted,CSS中dashed和dotted的区别有哪些

    对于刚刚接触css的朋友们来说都会分不清dashed和dotted,那么你知道CSS中dashed和dotted的区别有哪些吗?那么针对这个问题爱站小编就为大家接受CSS中dashed和dotted的 ...

  9. CSS中background与background-image的区别

    CSS中background与background-image的区别 1.如果只是设置两张背景图不涉及CSS样式那么两者都可以使用 2.如果设置样式那就只能用background,如 以下是不适用ba ...

最新文章

  1. ASP.NET--Menu控件
  2. MySQL与优化有关的命令_MySQL优化全攻略-相关数据库命令
  3. 微信支付异常:appid and openid not match
  4. 网络编程 -- RPC实现原理 -- RPC -- 迭代版本V4 -- 远程方法调用 整合 Spring 自动注册...
  5. 关于multimap和multiset
  6. Linux 配置iso系统盘为本地yum源
  7. SAP BCP 超时机制的实现
  8. Android点赞头像列表
  9. java后端做教育视频网站源码_基于 Java Spring cloud的开源在线教育系统调试实战...
  10. Mysql 常用函数集
  11. 对接阿里云天气,获取天气预报数据
  12. 哔哩哔哩缓存视频无声音,使用python合成音频与视频
  13. 狂神说Springboot
  14. c语言srand函数
  15. 关于98% after emitting CopyPlugin个人探索
  16. 用C++实现数据总线的方法系列(上):基本概念同步队列
  17. 网线连接olt配置计算机IP,EPON-ONU-OLT配置手册.pdf
  18. 我在赶集网的两个月(完整版)
  19. [美文赏析]《非走不可的弯路》--张爱玲
  20. 如何解决Bat脚本中包含中文,运行乱码

热门文章

  1. 后台getshell常用技巧总结
  2. 学习一项新技能的公式
  3. 删除数据文件—启动不了数据库--恢复数据库—启动数据库
  4. JSON之三:获取JSON文本并解释(以google的天气API为例)
  5. 把十进制转化为二进制的一种方法
  6. 领域驱动设计(DDD)的精髓
  7. spark.mllib:回归算法
  8. 行为型模式:状态模式
  9. Java 中静态方法 实例方法 具体方法区别与联系
  10. TC SRM601