使用CSS缩写给你的网站加速
关于CSStech.techweb.com.cn.r2[,n(|1~&g#_
0])q:U/k)z4b
用CSS缩写给你的网站加速
;k0y2{)D.M'S"n$H'p
*F,?0Z'\7w/i)itech.techweb.com.cn Web网站可用性的关键指标是速度,更确切地说,是页面能以多快的速度出现在访问者的浏览器窗口里。影响速度的因素有很多种,包括Web服务器的速度、访问者的Internet连接情况,以及浏览器必须下载的文件大小。尽管你无法控制服务器和连接的速度,但是你可以控制构成网站Web页面的文件大小。tech.techweb.com.cn,N7V!~!`"m-G5O![6z
5\6O0J9g1P
为了让网站能够更快,Web的建设者都会按常规地压缩和优化网站上的每一个图像文件,这常常使得为了将文件的大小减少几个百分点而牺牲了图像的质量。由于CSS样式表是纯文本文件,和图像相比相对较小,所以Web建设者很少考虑采取措施减少其CSS样式表文件的大小。但是,通过使用CSS缩写以及其他的一些简单技巧,你可以在很大程度上减少样式表的大小。在我对自己样式表的一次非正式的特别测试中,我把文件的大小降低了大约25-50%。
%E+w:i"n2V(g+L程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛
-`#C'C:^4m/I!e H 用CSS缩写给你的网站加速
8}#N/I6@ xTechWeb-技术社区tech.techweb.com.cn,c8Q%q'F!G:u*Y$q(k
Web网站可用性的关键指标是速度,更确切地说,是页面能以多快的速度出现在访问者的浏览器窗口里。影响速度的因素有很多种,包括Web服务器的速度、访问者的Internet连接情况,以及浏览器必须下载的文件大小。尽管你无法控制服务器和连接的速度,但是你可以控制构成网站Web页面的文件大小。4?:B)P,h,`1N-y)E
5t.]%w$b9d(V5w 为了让网站能够更快,Web的建设者都会按常规地压缩和优化网站上的每一个图像文件,这常常使得为了将文件的大小减少几个百分点而牺牲了图像的质量。由于CSS样式表是纯文本文件,和图像相比相对较小,所以Web建设者很少考虑采取措施减少其CSS样式表文件的大小。但是,通过使用CSS缩写以及其他的一些简单技巧,你可以在很大程度上减少样式表的大小。在我对自己样式表的一次非正式的特别测试中,我把文件的大小降低了大约25-50%。
*|5S,r'\-R*F-_&a$q7X;U(M1k2\9}
使用CSS的缩写性质
4Z6j*v8z2i)S9y/^TechWeb-技术社区!N6E*c)b/@3x!{4I
CSS的缩写性质(shorthand property)是一些专用的性质名,用来代替多个相关性质的集合。例如,间隙性质(padding property)是顶部间隙(padding-top)、右侧间隙(padding-right)、底部间隙(padding-bottom)和左侧间隙(padding-left)的缩写。tech.techweb.com.cn+P1X%D-E%j3J0Y
tech.techweb.com.cn(a L.g:S1a#W*](V
使用速写性质让你能够把多个性质/属性对(property/attribute pair)压缩进CSS样式表的一行代码里。例如,想一想下面的代码:
9x;}2K/b+@TechWeb-技术社区
8~2n4v"V7L$x([-}TechWeb-技术社区以下是引用片段:
#s%t.w5i:P,K4g程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 .sample1 {
2K-a6\4Y(O:_1x程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 margin-top: 15px;
"w#R'Y#Y"?#e7s*G;o9Ttech.techweb.com.cn margin-right: 20px; %?%a(N7H)U9?/E/W%d(x;h
margin-bottom: 12px; (g6m/@,{)B&p'u
margin-left: 24px; *v,K6s.k7I
padding-top: 5px;
'X-M-Z+H3@#B-n3{,rtech.techweb.com.cn padding-right: 10px;
.e,w;~5i-z0} ^TechWeb-技术社区 padding-bottom: 4px; "F2h-U9D/t
padding-left: 8px;
&`"T-E:R,{8c/}0d程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 border-top-width: thin;
*h)C$E4E/C0s7i'B0R1e border-top-style: solid; 9d.q1]&e'?
border-top-color: #000000;
&J"]"g/L+H*w7s } 程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛8|5X,|(y _5l!r1g
TechWeb-技术社区&z9~)H;a*B7]
程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛"F2M)u'u-U:w#W
将它用一些缩写性质来替代就能够把代码减少为下面这样,两者的实际效果是完全一样的:TechWeb-技术社区2W(p,?1U+w#R-P2O-J3J
tech.techweb.com.cn;r.?,O2G2o,d4j$s*Q8R
以下是引用片段:3M8b2c7Z7}(q&w0@
.sample1 {
&h3]7u,\/Q#x"E)XTechWeb-技术社区 margin: 15px 20px 12px 24px;
+J%y:K&r.`5g R6m padding: 5px 10px 4px 8px;
:^5z*K5s9D4n6e6P;|)g border-top: thin solid #000000;
4a%H7M#l&D2Q'h*F(z z+Ptech.techweb.com.cn } ;s#O8q$K"~;Y:T0`
(P'A;z8a0@!^4L
(r0|*`2A)Q3J,v M0@ 要注意,缩写性质还有多个属性,每一个(属性)都对应一个被组合进入缩写性质的常规性质。属性由空白隔开。tech.techweb.com.cn"s"P/j L.u N8j(^
)G2^ D0i8|9M4JTechWeb-技术社区 当属性是类似的值的时候,例如用于边框空白性质(margin property)的线性测量的时候,接在缩写性质之后的属性的顺序很重要。属性的次序是从顶部(顶部的边框空白)开始,然后围绕格子(box)按顺时针次序继续。
3H:]0Z2U8[3S0["w1{;VTechWeb-技术社区
7?6Y7?:W:H(W:L(N:Z)_TechWeb-技术社区 如果缩写性质的所有属性都是相同的,那么你可以简单地列出单个属性,然后在前面将它复制四遍。因此,下面的两个性质是相等的:
#G!|:A.z.s4?4D/h e/[2`2_'`#b&g:U9c9C
margin: 5px 5px 5px 5px;
7h:G'}#d"a(j5ctech.techweb.com.cn3A(F'o;J1r5o.W
margin: 5px;
8{7O'e2w2E4c7Y
;|&m"B3\ d.K程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 类似的,你可以使用接在边框空白或者间隔性质之后的两个属性来代表顶部/底部和右侧/左侧属性对。
7z;X&n+w+Q!t
6S%q8n'o5z程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 margin: 5px 10px 5px 10px;
(i'G"u3J#}tech.techweb.com.cn9|!g.x8S!H7v2[
margin: 5px 10px;
$|7A.r4C5D
2G7I5\;B)@*@ u(k,K程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 属性的顺序在它们是不相似的值的时候是不重要的。因此,边框颜色、边框风格和边框宽度等属性可以以任何顺序接在大纲性质(outline property)之后。忽略某个属性等同于从样式规则里忽略掉对应的常规性质。
%C9y)p7P2]0q*O$G9e sTechWeb-技术社区tech.techweb.com.cn6n2m8s7l7[&_.Z9c
下面是CSS缩写性质的列表以及它们所表示的常规性质。
1U"d"K$q8x5q8gTechWeb-技术社区
6Q1k$q:V!L4B,Y6k*Atech.techweb.com.cn Background(背景):背景附件、背景颜色、背景图像、背景位置、背景重复
-[0{+l8?5^-m7e*s-F;z6t"N,l
Border(边框):边框颜色、边框风格、边框宽度
.O1b![:V(w(O%Q*J"K l*V2t;n&f-^ ?,X+N1z:k
border-bottom(底部边框):底部边框颜色、底部边框样式、底部边框宽度
&X5I-D8C(\*J)O5z#`%g
8[$R)C9S3h1Etech.techweb.com.cn border-left(左侧边框):左侧边框颜色、左侧边框样式、左侧边框宽度
4|(V;J6q:R)J.k*otech.techweb.com.cn"^&a4[6e3t2U+d-I
border-right(右侧边框):右侧边框颜色、右侧边框样式、右侧边框宽度
;g'P ~ k(M*I.A5PTechWeb-技术社区
-g;e!Z _;@"N6k'Otech.techweb.com.cn border-top(顶部边框):顶部边框颜色、顶部边框样式、顶部边框宽度
6y5E+c(c-?/otech.techweb.com.cntech.techweb.com.cn:E!`!n:^:v#p
cue(声音提示):前提示、后提示
6F$t1o,Z2c/e4V*H;i
#`0l7\(u0|!P!@)Otech.techweb.com.cn font(字体):字体、字号、字体样式、字体粗细、字体变体、线高度、字体大小调整、字体拉伸程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛/K9_+s9W2C
TechWeb-技术社区+k6k(w8d"w6L
list-style(列表样式):列表样式图像、列表样式位置、列表样式类型4@8I%m3o*I
,c*~+V0K5o"I+l5~"{程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 margin(空白):顶部空白、右侧空白、底部空白、左侧空白
4P;V%W"A!P9b/]!x!a'x程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛
*D#c0?9v&v1a程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 outline(大纲):大纲颜色、大纲样式、大纲宽度
5},[&I4O8y
#h3F0R+O'W6v5V$C(C0Ntech.techweb.com.cn padding(间隙):顶部间隙、右侧间隙、底部间隙、左侧间隙4j5h(w'n9u4a1G1C:o1f
程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛*[!x+h"k9["t0Y!Y,K
pause(暂停):后暂停、前暂停
2d7]/I&J!W'q1l2s9@程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛#]5M8~5E!f.J
减少空白
-N,]8@4l5f9Itech.techweb.com.cn.D9o9o1e*k;I.x8B1W
减少CSS样式表大小的另一种方法是从文档里删掉大多数无用的空白。换句话说,将每条规则打破放进一行代码里,即把原来插入到代码里用来把每个性质/属性分割到不同行的换行符和缩进符删掉。TechWeb-技术社区&G:t7e;Z6] Z+U9l
6n.j1d5W*g&Q;z"]
例如,下面的代码示例在内容上相同,但是第二个要精炼得多:"g8i&[9S"D;x5q-s0l
3_/P;K1c)z%x:K0r;\'i程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛以下是引用片段:8G-J$g"c3^,n
h1 {
*D.o#~9I4H N6y8B8H)m font-size: x-large; &L.L.L1e&r8}0q%J
font-weight: bold;
;?&w9H*g;B color: #FF0000;
-D's*N*[,a'}+Z1e5W0R } e3D2C#b,E9K
h1 {font-size: x-large; font-weight: bold; color: #FF0000} 程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛!x%p"})p7P;r2U
(\'l2W"p${ X-i+r&a程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛
.q.w#v8Z.i'k7c;uTechWeb-技术社区 删掉注释
;i1u1q,F7D#g9L"[!C;r-I1Ktech.techweb.com.cnTechWeb-技术社区7u"j(r-O"y:q7y
将注释从你的CSS代码里删掉是减少文件大小的另一种方式。尽管注释对于代码的阅读很有用,但是它无助于浏览器生成你的Web页面。很多Web建设者都习惯给每一行代码都加上注释,或者至少给每一条规则声明都加上。这样的慷慨注释在CSS样式表里是极少需要的,因为大多数CSS性质和属性都很容易阅读和理解。如果你对类、ID,以及其他的选择器都使用有意义的名称,你就可以省掉大多数的注释,同时仍然能够保持代码的可读性和可维护性。0S6@+J;a8X
/J#S6f!W5P8p,A2w.j程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛以下是引用片段:tech.techweb.com.cn0E6`$^2u `'L2b'o
h1 { /* Heading 1 style*/ 程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛"p:M/O+Q"F3c!K
font-size: x-large; /* x-large size */
+I1I8C6j4n:~#H*~程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 font-weight: bold; /* Bold */ TechWeb-技术社区)G*@#P(}5i#J#`4}:[.i.c
color: #FF0000; /* Red */
9@(l:g%M!q$j3_程序开发,操作系统,服务器,源码下载,Linux,Unix,BSD,PHP,Apach,asp,下载,源码,黑客,安全,技术社区,技术论坛 } X8]#Y'v6]#i8a6?!\:k
1~5Y3G2~/V(|!~8sTechWeb-技术社区
'K(?5} w7D5nTechWeb-技术社区 使用速写性质、删除无用的空白、省略注释都能够在很大程度上减少你CSS样式表文件的大小。这反过来会对加速你Web网站速度的总体目标作出小的、但是可能会是显而易见的贡献。
|