当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 对css性能优化的一点看法

CSS样式表
CSS网页设计 IE8和IE7共存
CSS2 打印属性让打印HTML文档不出问题
制作网页中设计段落缩进的方法
CSS border 属性使用说明
CSS border-style 属性使用方法
CSS border-color 属性使用方法
CSS border-width 属性使用教程
CSS padding属性定义边内补白
CSS margin 属性定义边外补白
网页布局教程 掌握CSS网页布局属性
css 背景样式属性说明
span margin 设置生效
html 滚动条在IE6和IE7中兼容性问题
IE6 两个div有间隙的问题(IE 3px bug)
CSS 数字和字母将容器撑大问题解决
换个角度看页面重构中的语义化
DIY属于个人开发使用的CSS Reset
CSS 空格引起网页布局间距问题
CSS 网页制作时遇到问题的快速参考技巧
css li 去掉点的样式写法

CSS样式表 中的 对css性能优化的一点看法


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

现在据我知道比较好的用来测试网页性能的工具有两个,分别为:老牌的雅虎yslow,新秀google page Speed。

怎么会突然想起谈css与性能优化呢?其实这个问题我已经想了很久了,想写,但是也不知道从何写起,今天就简单的说一下,近段使用通过使用page Speed,对css性能优化的一点看法吧!

在市场上的很多书,讲的css的写法都大同小异,并没有说,如何写好,如何写不好!只是说到了id和class是作为css和js的挂钩,我们可以通过id与class来控制页面的展现效果。并且还谈到了css层级写法的强大威力,所以大多数为了减少在页面中定义id与class,都大量的使用了css层级的写法,比如:

<div class=”list”>

<ul>

<li><span>01</span>测试列表</li>

<li><span>01</span>测试列表</li>

</ul>

</div>

这样的一个结构,如果我们想修改li中的span的话,为了尽量的减少class的定义,我们可以这样写:

.list ul li span{样式}

.list li span{样式}

list span{样式}

这三种写法有什么好处与不好的地方呢?

如果使用第一种方法,我个人觉得太长了,没有必要,那如果使用第三种写法呢?怕的是如果在这个div与ul平级也有span的时候,这时候这个span也会被继承到样式,我个人平时都比较喜欢第一种写法,相对来说,对span比较安全,而且可以节约几个字符吧!嘿嘿!但是我的这种写法通过page Speed的检测结果是属于低效的!因为需要检测的层级太多!就像我们上楼梯和下楼梯一样!故而像这种地方,我们完全可以在html中为span增加class,更有可能这个class我们以后还用得着!

<div>

<ul>

<li><span class=”num”>01</span>测试列表</li>

<li><span class=”num”>01</span>测试列表</li>

</ul>

</div>

结构被我改成了这样,如果需要对这个span进行修饰的话,自然你也知道应该如何写啦:

.num{样式}

这样的话,浏览可以直接找到num这个样式,直接赋予他样式,这样是不是更简洁,更高效呢?如果你不信,可以试试吧!

当然,class的定义与层级的使用的话,还有很多,很多,我在这里就仅仅是举了一个简单的例子。如果你与我有不同看法的,请指正。

节约样式

我们在写一个网站的时候,特别是在站不大不小的时候,都会把样式写在一个样式表中,但是这样的话,第一次加载的样式的时候,会相对比较慢,我们是否有一些其他的方法来解决这样的问题呢?通过我这段时间的反思,也不知道是否可行,我觉得是有的,不过我的想法可能过于理想化,那么就是前期必须知道页面的整体风格!不过一般在现实中,还有设计师的一些特殊想法,相对实现起来可能一些麻烦,下面我们来看看:

1、找出真正的公共样式

2、每个页面中在增加一个属于自己页面的独特的样式

3、通过谷歌的预加载方法(JS实现),通过空闲时间将其他页面的样式下载到本地缓存中

其他页面也是如此,这样感觉是工作量可能会大一些,但是我觉得通过这样的方法,的确可以对性能是有所提升的,这仅仅是说到CSS,其实JS也可以使用同样的方法来解决,还有图片,等等!

今天就说到这里,在看看,在改改!