CSS设计制作网页不要使用@import

2016-02-19 23:50 5 1 收藏

下面是个简单易学的CSS设计制作网页不要使用@import教程,图老师小编详细图解介绍包你轻松学会,喜欢的朋友赶紧get起来吧!

【 tulaoshi.com - Web开发 】

Translate From:stevesouders
原文:高性能网站设计:不要使用@import

在高性能网站设计的第五章,我简要的提到@import 对于网站的性能有某些负面的影响,然后我在 Web 2.0 Expo 的演讲上深入探讨了这个问题,并创建了一些测试页面和HTTP瀑布状图表,这些在下面将会用到。对于这个问题的底线是:如果你想样式表并行载入,以使页面更快,请使用LINK 替代@import。

LINK vs. @import

大家都知道,有两种方法可以在你的页面中导入样式文件。你可以使用LINK标签:

 link rel='stylesheet' href='a.css' /

或者使用@import 方法:

style
@import url('a.css');
/style

我更喜欢使用LINK,因为它比较简单而如果使用@import的话,你必须时刻记得要将@import放到样式代码的最前面,否则它将会不起作用。而且事实证明,避免使用@import 同样对网站性能有益。

@import @import

我将探究LINK和@import两种方式的不同。在这些例子中,有两个样式表: a.css和b.css。每个样式表都配置为需要花费两秒钟来下载,这样就比较容易的看出来它们对网站性能的影响。第一个例子使用@import 导入两个样式文件。这个例子,我们称之为@import @import,HTML代码可以写成这个样子:

style
@import url('a.css');
@import url('b.css');
/style

如果你一直这种方式使用@import,那么就没有什么性能问题,尽管这可能会因为竞态条件而可能引起JavaScript错误。两个样式文件将同时并行下载,就像在图一中显示的那样(第一个小的请求是HTML该文件) 。问题出现在当@import嵌套入其它样式中或者和LINK联合使用的时候。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

图一:一直使用@import 是可以的

LINK @import

这个LINK @import的例子使用LINK加载a.css,使用@import导入b.css:

link rel='stylesheet' type='text/css' href='a.css' /
style
@import url('b.css');
/style

在IE中(在6, 7, 和8中测试过),这会导致样式表文件逐个加载,正如图二所示。并行下载资源是加速页面的一个关键。就像图示的那样,这种方法在IE中会导致页面需要更多的时间才能加载完成。

图二. 在IE中link混合@import 会破坏并行下载

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

来源:http://www.tulaoshi.com/n/20160219/1630736.html

延伸阅读
标签: Web开发
一.使用css缩写 使用缩写可以帮助减少你CSS文件的大小,更加容易阅读。css缩写的主要规则请参看《css基本语法》。 二.明确定义单位,除非值为0 忘记定义尺寸的单位是CSS新手普遍的错误。在HTML中你可以只写;100,但是在CSS中,你必须给一个准确的单位,比如:" width:100em。只有两个例外情况可以不定义单位:行高和0值。除...
标签: Web开发
看到淘宝网页中这样写使用的是import,而很多网站都是使用link,当然还有一些页面比较简单,流量很大的网站,是直接将CSS写在html代码中的?他们有什么区别?css用import还是link好?从经典论坛和另外一个网站大概了解了一下 看到淘宝网页中大部分是这样写的 style type="text/css" media="screen" @import ur...
标签: Web开发
个人总结了在开发css框架中的一点经验,献丑了。希望大家的讨论能使我们共同进步。:) 1、css框架 中国的互联网行业已经发展了10年,浏览器也从最早流行的NS到现在的FF3.IE7等等前端开发工程师的职位也诞生了。近几年在web开发中,有个非常火的词框架。YUI、JQuery、Prototype这些javascript框架在开发网站时,确实成为前端开发工程师的手中...
标签: Web开发
在进行浮动布局时,大多数人都深知,在必要的地方进行浮动清理:div style=clear:both;/div。 例如: div style=background:#666;       div style=float:left; width:30%; height:40px;background:#EEE; Some Content/div /div 此时预览此代码,我们会发现最外层的父元素float container,并没有显示。这...
标签: Web开发
CSS标签重置 对于XHTML+CSS布局起着一个重要的决定性作用,它是提高页面浏览器兼容性的第一步。 那么什么是标签重置呢? 顾名思义,就是对HTML中的所有标签属性重置,因为每个浏览器都有一个自己默认的CSS文件,对HTML中的所有的标签进行定义,以便没有定义CSS的页面能够正常显示在页面,页面在加载的时候如果没有找到自带的CSS文件,浏...

经验教程

313

收藏

28
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部