当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS @import与link的具体区别

CSS样式表
CSS教程之css选择器 、属性、值
CSS的color颜色使用说明
firefox css自动换行的实现方法
css支持标准的图片垂直居中
css+table 1px边框单元格
css之使table也能overflow:hidden
几个常用经典的css技巧
css 跨浏览器实现float:center
css浏览器不兼容原因分析及解决办法
iframe transparent透明背景方法
有衬线字体与无衬线字体比较
div+css在思路和流程上实现结构与表现的分离分析
css教程 css和document
层盖住下拉列表框问题解决方案
css样式之区分input是按钮还是文本框的方法
CSS expression控制图片自动缩放效果代码[兼容 IE,Firefox]
谈谈网页设计中的字体应用Font Set
XHTML标签的自关闭写法的坏处分析
顶级经典常用的CSS属性收集整理
10条影响CSS渲染速度的写法与使用建议

CSS样式表 中的 CSS @import与link的具体区别


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 127 ::
收藏到网摘: n/a

们知道在网页中引用外部CSS有两种方式,即:@importlink,我们也经常听到有人说要使用link来引入CSS更好,但是你知道为什么吗?

link

link就是把外部CSS与网页连接起来,具体形式:

<link rel='stylesheet' href='style.css' type='text/css'/>

@import

import文字上与link的区别就是它可以把在一个CSS文件中引入其它几个CSS文件,具体形式:

@import url("styles.css");

为什么使用@import

大部分使用@import方式的人是因为旧的浏览器是不支持@import方式的,这意味着我们可以使用@import来引入只让现代浏览器解析的CSS样式.

使用以下代码可以使IE6及以下的浏览器无法解析该CSS(IE6以下的属于年久失修在这里略去方法)

@import url(../style.css) screen;

另一个主要的原因就是当你的网页需要引入几个外部CSS文件时.你可以使用link引入一个CSS,然后在这个CSS文件中用@import方式引入其它几个CSS文件.这样看起来更容易管理.

为什么使用link

使用link方式一个最主要的原因就是你可以让用户切换CSS样式.现代浏览器如Firefox,Opera,Safari都支持rel="alternate stylesheet"属性(即可在浏览器上选择不同的风格),当然你还可以使用Javascript使得IE也支持用户更换样式.

如不明白,请进入这个页面,然后在Firefox中点击"查看-页面风格".

@import的小毛病

如果你网页head标签里面十分简单,只有@import属性的话,当用户浏览的网速较慢时,他会看到一个没有风格样式的页面,然后随着CSS文件被下载完成才可以看到应有的风格.要避免这样的问题,你需要确保head里至少有一个script或是link标签.

04-11更新:  @import会使得CSS整体载入时间变长.并且在IE中会导致文件下载次序被更改,例如放置在@import后面的script文件会在CSS之前被下载.

详情请参考http://www.stevesouders.com/blog/2009/04/09/dont-use-import/

到底要用那种方式

就目前看来小型的网站还是使用link比较合适(或者说比较流行),当然如果将来我们需要把CSS进行模块化管理也肯定要用到@import.
参考资料:What's the Difference Between @import and link for CSS? 以作学习之用,欢迎补充.