css的优化规则
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的优化规则的更多相关文章
- 10个CSS简写/优化技巧-摘自网友
		10个CSS简写/优化技巧23来源/作者:未知 类别:前端开发 字体大小:大|中|小 背景颜色:蓝|白|灰 ? ? CSS简写就是指将多行的CSS属性简写成一行,又称为CSS代码优化或CSS缩写.CS ... 
- yahoo的30条优化规则
		1.尽量减少HTTP请求次数 终端用户响应的时间中,有80%用于下载各项内容.这部分时间包括下载页面中的图像.样式表.脚本.Flash等.通过减少页面中的元素可以减少HTTP请求的次数.这是提高网页速 ... 
- CSS性能优化探讨
		大部分前端开发人员都不关心CSS性能优化,其实对于一个复杂的页面来说,高效的选择器还是可以带来一定的性能提升的. 1. CSS 选择器 浏览器是“从右往左”来分析 class 的,它的匹配规则是从右向 ... 
- CSS性能优化的几个技巧
		前言 随着互联网发展至今,对于网站来说,性能显的越来越重要了,CSS作为页面渲染和内容展现的重要环节,影响着用户对整个网站的第一体验.所以,我们需要重视与CSS相关的性能优化. 项目开发初期我们可能因 ... 
- css的命名规则
		本文转载自谈笑涧<css的命名规则> 操作系统版本:Windows 7 浏览器版本:IE6,IE7,IE8,Firefox 3.6.2,Safari 4.0.4,Chrome 5.0.35 ... 
- 改变CSS世界纵横规则的writing-mode属性
		改变CSS世界纵横规则的writing-mode属性 这篇文章发布于 2016年04月27日,星期三,23:12,归类于 css相关. 阅读 8292 次, 今日 71 次 by zhangxinxu ... 
- CSS样式优化
		一.css代码优化作用与意义 1.减少占用网页字节.在同等条件下缩短浏览器下载css代码时间,相当于加快网页打开速度2.便于维护.简化和标准化css代码让css代码减少,便于日后维护3.让自己写的cs ... 
- 1:CSS中一些@规则的用法小结  2: @media用法详解
		第一篇文章:@用法小结 第二篇文章:@media用法 第一篇文章:@用法小结 这篇文章主要介绍了CSS中一些@规则的用法小结,是CSS入门学习中的基础知识,需要的朋友可以参考下 at-rule ... 
- CSS的优先级规则
		CSS的优先级规则有两类 1.位置群组规则 最高优先级为元素内嵌的style样式,如<div style=” “></div> 次高优先级为html头部中的<style& ... 
随机推荐
- python装饰器学习笔记
			定义:本质上就是个函数,(装饰器其他函数)就是为了给其他函数添加附加功能 原则:1.不能修改被装饰的函数的源代码 2.不能修改被装饰的函数的调用方式 #-*-coding:utf-8-*- 1 imp ... 
- Linux下vim基本操作和清空文件内容的常用方法
			以前都是用的很土的办法,大概有以下几种.1.直接删除,创建一个新的同名文件(这种方法的弊端是有可能这个文件带着权限或者是属性,那么你新建这个文件后有可能会导致权限不正确或者丢失属性).2.使用vim编 ... 
- 正则匹配获取HTML图片地址,正则匹配获取HTML内容
			//正则匹配获取HTML图片地址preg_match_all('/<img.*?src="(.*?)".*?>/is', $str, $array); if (isse ... 
- vivado各版本的区别
			vivado各版本的区别 Vivado HL Design Edition: Vivado HL System Edition: 区别在于System Edition包含有system generat ... 
- Fabric Engine2.0的自定义节点功能
			Fabric Engine是一个多用途的引擎,针对maya等软件写节点写功能很方便.尤其是canvas节点编辑面板,提供了大量现有的功能供用户调用,当然这些节点功能都是可被用户编辑修改的,除此之外还提 ... 
- 一:elasticsearch常用操作总结
			索引 搜索 mapping 分词器 1.创建索引 http://192.168.65.131:9200/smartom_index 2.查看索引: http://192.168.65.131:9200 ... 
- ThinkPHP 介绍及安装 -1
			一.ThinkPHP的介绍 MVC M - Model 模型 工作:负责数据的操作 V - View 视图(模板) 工作:负责前台页面显示 C - Con ... 
- 黄聪:C#如何使用fiddlercoreCapture监控手机APP
			1.去下载Fiddler:https://www.telerik.com/download/fiddler 2.安装Fiddler,按下图所示导出证书,导出后在桌面得到:FiddlerRoot.cer ... 
- SpringMVC拦截器配置
			1.首先在springmvc.xml中添加配置 <mvc:interceptors> <mvc:interceptor> <mvc:mapping path=" ... 
- 【ActiveMQ】之安全机制(一)管控台安全设置
			ActiveMQ 管控台基于jetty,默认端口8161,默认用户名,密码都是admin,这样的安全配置过于弱化,所以我们需要修改一下 1.修改端口 找到conf/jetty.xml文件里面这一段配置 ... 
