引用外部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 ...
随机推荐
- Jackson - Date Handling
Handling dates on Java platform is complex business. Jackson tries not to make it any harder than it ...
- Linux 命令 - chmod: 更改文件模式
文件的模式 当使用 ls -l 命令查看目录内容时 [huey@huey-K42JE cmdline]$ ls -l /etc/passwd -rw-r--r-- 1 root root 1917 J ...
- Git CMD - init: Create an empty Git repository or reinitialize an existing one
命令格式 git init [-q | --quiet] [--bare] [--template=<template_directory>] [--separate-git-dir &l ...
- zookeeper启动报错(数据目录权限不对)
zookeeper启动报错日志: 2016-11-16 11:19:43,880 [myid:3] - INFO [WorkerReceiver[myid=3]:FastLeaderElection@ ...
- 三道题(关于虚表指针位置/合成64位ID/利用栈实现四则运算)
第一题 C++标准中,虚表指针在类的内存结构位置没有规定,不同编译器的实现可能是不一样的.请实现一段代码,判断当前编译器把虚表指针放在类的内存结构的最前面还是最后面. 第二题 在游戏中所有物品的实例 ...
- ORA-00001: unique constraint (...) violated解决方案
ORA-00001: unique constraint (...) violated 的解决方案 今天往Oracle数据库里插入数据一条记录的时候,报错了, 控制台抛出异常:违反唯一性约定, 我以为 ...
- 第三十九篇、NavBar动态隐藏、设置透明、毛玻璃效果
1.动态隐藏 - (void)viewDidLoad { [super viewDidLoad]; if ([self respondsToSelector:@selector(automatical ...
- 关于百度编辑器UEditor(1.4.3)在C#.NET中的应用实例
首先去百度UEditor官网下载 1.4.3 .net版本 http://ueditor.baidu.com/build/build_down.php?n=ueditor&v=1_4_3-ut ...
- XPath 初步讲解
2016-05-05 XPath是JavaScript 中节点查找手段,ie9以后的版本才支持w3c标准,其他浏览器基本支持.在e8之前的浏览器,通过基于 activeX的xml dom对象实现. 为 ...
- browserify总结
一.browserify 简介 browserify is a tool for compiling node-flavored commonjs modules for the browser. Y ...