引用外部CSS的link和import方式的分析与比较
很多网页中的 CSS 链接与引用是这样写的:
<style type="text/css" media="screen">
@import url("http://www.abaonet.com/abc.css");
</style>
而很多网站使用的都是 link
<link rel="stylesheet" rev="stylesheet" href="style.css" media="all" />
而像 google 百度 163等网站它们都是直接写在网页中。
当然使用链接 link 和导入 import 的好处就是易于维护,但当网速比较慢的时候,会出
现加载中断的情况,从而导致页面排版出错。
他俩的作用相同,唯一的不同是服务对象不一样:
@import 为 CSS 服务
link 是为当前的页服务
外部引用 CSS 中 link 与 @import 的区别:
本质上,这两种方式都是为了加载 CSS 文件,但还是存在着细微的差别。
差别1:老祖宗的差别。link 属于 XHTML和html5 标签,而 @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的link和import方式的分析与比较的更多相关文章
- Web--CSS控制页面(link与import方式差别)
先了解: [1] "Table"和"DIV"这两个网页元素诞生的目的不同,首先Table诞生的目的是为了存储数据,而DIV诞生的目的就是 ...
- CSS的导入方式:link与import方式的区别
在前端开发中,加载CSS样式文件有两种方式:link方式与import方式,它们之间的区别主要有以下几点: 1.兼容性不一样 link是一个HTML标签,所以它不存在兼容性问题,而import方式则具 ...
- 外部引用CSS中 link与@import的区别
差别1:link属于XHTML标签,而@import完全是CSS提供的一种方式. link标签除了可以加载CSS外,还可以做很多其它的事情,比如定义RSS,定义rel连接属性等,@import就只能加 ...
- CSS中link与import的区别
一.import的用法 1,在html文件中 <style type="text/css"> @import url(http://www.dreamdu.com/st ...
- Web--CSS控制页面(link与import方式区别)
先了解: [1] “Table”和“DIV”这两个网页元素诞生的目的不同,首先Table诞生的目的是为了存储数据,而DIV诞生的目的就是为了架设页面结构 W3C,是World Wide ...
- 【对比分析三】CSS中 link 和@import 的区别
1). link 是 XHTML 标签,无兼容问题: @import 是在 CSS2.1 提出的,只有IE5以上才能识别. 2). 语法结构不同. link (链接式)只能放入HTML源码中,语法 ...
- [微信小程序] -- wxss引用外部css文件及iconfont
小程序引入外部文件的方式是: 只需要在其css文件写上: @import "外部css地址.wxss"; 因为项目需要, 小程序中需要使用iconfont , 很容易就想到了H5的 ...
- 前端深入之css篇|link和@import到底有什么区别?
写在前面 在真正的前端开发中,我们很少去写行内样式和内嵌样式,通常都是去引用外部样式. 而在我们学习之初的外部样式表都是用link引入的,但是当后来我们学习的逐渐深入,发现@import也可以引入样式 ...
- CSS中link和@import的使用区别
我们都知道在html中引入外部的CSS 有2种方式,link标签和@import,他们又什么区别呢? 1.从属关系区别@import是 CSS 提供的语法规则,只有导入样式表的作用:link是HTML ...
随机推荐
- Slickflow.NET 开源工作流引擎基础介绍(五) -- 会签加签高级特性介绍
前言:会签和加签是常见审批流程模式,在引擎中,对这两种流程模式做了分别定义和实现,其中也用到了Workflow Pattern的Multiple Instance(多实例) . 1. 会签和加签的定义 ...
- Category
Category 首先我们来谈谈Category. Objective-C提供了一种与众不同的方式——Catagory,可以动态的为已经存在的类添加新的行为.这样可以保证类的原始设计规模较小,功能增加 ...
- asp网站发布步骤总结
1.在VS2012中打开索要发布的网站,初始页可重命名为index.html或default.apx. 2.点击 生成>生成“网站”,然后“发布网站”. 3.进行发布设置: (1 配置文件 ( ...
- Android之手机屏幕的获取
屏幕区域的获取: activity.getWindowManager().getDefaultDisplay(); 应用区域的获取: Rect outRect = new Rect(); activi ...
- win32进阶之路:程序托盘图标+右键弹出菜单
开场白 本次介绍两个非常棒且实用的技巧:程序托盘图标和右键弹出菜单,效果如下图. 程序托盘图标用了迅雷的图标,右键点击时候会弹出三个选项的菜单. 程序托盘图标设置 我会用尽可能清晰明了的步骤介绍方式 ...
- block的动态传值例子
/* 写一个block传值 ,让两个数进行相除和相乘,在运行时动态决定采用哪种计算方式 */ #import <Foundation/Foundation.h> int main(in ...
- Excel常用函数
1.基本的算数函数 sum() average() 2.三角函数 sin() cos() 3.
- ZigBee 入网详解
本文将根据Sniffer来详细解释ZigBee终端设备入网的整个流程,原创博文. 当协调器建立好网络后,终端设备执行zb_startrequest函数,准备入网时,他们两者之间详细的流程如下.
- C++与Lua交互(一)
引言 之前做手游项目时,客户端用lua做脚本,基本所有游戏逻辑都用它完成,玩起来有点不爽,感觉"太重"了.而我又比较偏服务端这边(仅有C++),所以热情不高.最近,加入了一个端游项 ...
- 《RedHatLinux系统修复视频(通过本地镜像)》
此视频的测试环境: win7下安装的VMware redhatlinux6.3系统的修复 以删掉kernel系统引导故障重新安装kernel为例 基于本地镜像来对系统进行修复 如疑问可留 ...