1、避免过度约束:

// 不推荐
ul.nav{..} // 推荐
.nav{..}

 2、避免过长的后代选择符:

// 不推荐
html div tr td {..}

3、避免链式(交集)选择符:

// 不推荐
.menu.left.icon {..} // 推荐
.menu-left-icon {..}

4、使用复合(紧凑)语法:

// 不推荐
.someclass {
padding-top: 20px;
padding-bottom: 20px;
padding-left: 10px;
padding-right: 10px;
background: #000;
background-image: url(../imgs/carrot.png);
background-position: bottom;
background-repeat: repeat-x;
} // 推荐
.someclass {
padding: 20px 10px 20px 10px;
background: #000 url(../imgs/carrot.png) repeat-x bottom;
}

5、避免不必要的命名空间

// 不推荐
.someclass table tr.otherclass td.somerule {..} // 推荐
.someclass .otherclass td.somerule {..}

6、避免不必要的重复

// 不推荐
.someclass {
color: red;
background: blue;
font-size: 15px;
} .otherclass {
color: red;
background: blue;
font-size: 15px;
} // 推荐
.someclass, .otherclass {
color: red;
background: blue;
font-size: 15px;
}

7、避免使用Hack:使用条件性注释来代替hack

8、移除多余的结构(frameworks)和重设(resets)

  (1)使用CSS framework、reset,YUI Grid CSS使用的reset和Eric Meyer’s重设(Reset)

  (2)Resets能够移除不同浏览器的默认样式,使得页面在各个浏览器之间的表现一致

9、将CSS分成清晰的结构块

  (1)将CSS文件的声明用注释分隔开并进行排版

  (2)拆分布局风格,也就是给每种布局一个单独的CSS文件

10、使用留白:嵌套的代码使用一个tab缩进,所有属性独立一行

11、制定一套CSS标准:一定要养成为CSS写注释的习惯

12、压缩代码

  压缩是一个不错的解决方案,但是仅限于发布的时候,YUI Compressor和CSSTidy就是这样方面的专家,他们能够去除多余的代码,校验属性互相覆盖的错误。

  许多流行的编辑器,比如BBEdit, TextMate, 和 TopStyle 都能够帮助你格式化你的CSS代码成你想要的样子,你还能通过服务器压缩技术使用PHP处理你的CSS,你可以找到更多的CSS优化和压缩的CSS工具。

13、最好使用表示语义的名字:一个好的CSS类名应描述它是什么而不是它像什么。

14、避免 !importants:其实你应该也可以使用其他优质的选择器。

15、尽可能精简规则:你可以进一步合并不同类里的重复的规则。

16、合并CSS文件 

css的优化规则的更多相关文章

  1. 10个CSS简写/优化技巧-摘自网友

    10个CSS简写/优化技巧23来源/作者:未知 类别:前端开发 字体大小:大|中|小 背景颜色:蓝|白|灰 ? ? CSS简写就是指将多行的CSS属性简写成一行,又称为CSS代码优化或CSS缩写.CS ...

  2. yahoo的30条优化规则

    1.尽量减少HTTP请求次数 终端用户响应的时间中,有80%用于下载各项内容.这部分时间包括下载页面中的图像.样式表.脚本.Flash等.通过减少页面中的元素可以减少HTTP请求的次数.这是提高网页速 ...

  3. CSS性能优化探讨

    大部分前端开发人员都不关心CSS性能优化,其实对于一个复杂的页面来说,高效的选择器还是可以带来一定的性能提升的. 1. CSS 选择器 浏览器是“从右往左”来分析 class 的,它的匹配规则是从右向 ...

  4. CSS性能优化的几个技巧

    前言 随着互联网发展至今,对于网站来说,性能显的越来越重要了,CSS作为页面渲染和内容展现的重要环节,影响着用户对整个网站的第一体验.所以,我们需要重视与CSS相关的性能优化. 项目开发初期我们可能因 ...

  5. css的命名规则

    本文转载自谈笑涧<css的命名规则> 操作系统版本:Windows 7 浏览器版本:IE6,IE7,IE8,Firefox 3.6.2,Safari 4.0.4,Chrome 5.0.35 ...

  6. 改变CSS世界纵横规则的writing-mode属性

    改变CSS世界纵横规则的writing-mode属性 这篇文章发布于 2016年04月27日,星期三,23:12,归类于 css相关. 阅读 8292 次, 今日 71 次 by zhangxinxu ...

  7. CSS样式优化

    一.css代码优化作用与意义 1.减少占用网页字节.在同等条件下缩短浏览器下载css代码时间,相当于加快网页打开速度2.便于维护.简化和标准化css代码让css代码减少,便于日后维护3.让自己写的cs ...

  8. 1:CSS中一些@规则的用法小结 2: @media用法详解

    第一篇文章:@用法小结 第二篇文章:@media用法 第一篇文章:@用法小结 这篇文章主要介绍了CSS中一些@规则的用法小结,是CSS入门学习中的基础知识,需要的朋友可以参考下     at-rule ...

  9. CSS的优先级规则

    CSS的优先级规则有两类 1.位置群组规则 最高优先级为元素内嵌的style样式,如<div style=” “></div> 次高优先级为html头部中的<style& ...

随机推荐

  1. cachecloud安装部署

    项目地址:https://github.com/sohutv/cachecloud # 初始化数据库 默认插入admin超级管理员,用户名admin, 密码:admin 安装mysql yum -y ...

  2. Zookeeper命令行world

    world:anyone:cdrwa getAcl /imooc/abc 获得节点abc的权限 设置权限为crwa.  setAcl /nick/abc world:anyone:crwa 测试删除权 ...

  3. C# 抽象类和密闭方法

    抽象类abstract: 1.抽象类只存在一个目的就是被继承:2.抽象类不能够实例化,只能够被继承:3.抽象类可以包含抽象成员和普通成员,以及他们的任意组合:4.抽象类的抽象成员在派生类中需要使用ov ...

  4. Uedit编辑器编辑Velocity

    1.切换到源代码模式 UM.getEditor('editor').execCommand("source"); 2.给编辑器插入Velocity源码 $(".edui- ...

  5. OpenWrt实现802.11s组网模式

    参考 http://www.docin.com/p-277067204.html 无线网卡wlan0正常后,输入一下命令 iw dev wlan0 interface add mesh_iface t ...

  6. OpenEXR-2.2.0在Win7 x64系统下的安装方法

    最近在研究openexr这种文件格式,免不得安装一下OpenEXR软件,这个软件是开源的,需要编译安装,我的安装方法是这样的,分享一下. 一:去官网http://www.openexr.com/dow ...

  7. 解决cron无法运行报错:FAILED to authorize user with PAM (Module is unknown)

    查看cron运行日志 tail -f /var/log/cron 报如下错误: May 8 10:14:01 localhost crond[9399]: (root) FAILED to autho ...

  8. CheckFail设计很垃圾

        function checkFail(node, onError, fuckIE) {         var id = node.src;//检测是否死链         node.onlo ...

  9. 编译安装MySQL-5.7.13

    编译安装MySQL-5.7 cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影 ...

  10. [蓝桥杯]ALGO-79.算法训练_删除数组零元素

    从键盘读入n个整数放入数组中,编写函数CompactIntegers,删除数组中所有值为0的元素,其后元素向数组首端移动.注意,CompactIntegers函数需要接受数组及其元素个数作为参数,函数 ...