马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
现在YAHOO,MSN等国际门户网站,网易,新浪等国内门户网站,和主流的WEB2.0网站,均采用DIV+CSS的框架模式,更加印证了DIV+CSS是大势所趋。
翻译:阿捷
原文作者:RogerJohansson
作者简介:住在瑞典哥德堡,1994年入手下手打仗和介入web计划,456BereaStreet是他的住址,因而接纳这个名字作为他的团体主页域名
原文出处:www.456bereastreet.com
原文宣布工夫:2005年3月15日
阿捷申明:此文原名"CSStipsandtricks",有2篇,我将它们兼并翻译在本文中。
比来,常常有伴侣问我一些事情中碰到的CSS成绩。他们老是不克不及很好的把持CSS,影响CSS的效力发扬。我来剖析总结一下毛病地点,匡助人人加倍简单利用CSS。
本文总结了我入手下手利用CSS结构办法以来一切的技能和兼容计划,我乐意把这些与你分享,我会重点注释一些老手简单犯的毛病(包含我本人也犯过的),假如你已是CSS妙手,这些履历技能大概已都晓得,假如你有更多的,但愿能够帮我增补。
一.利用css缩写
利用缩写能够匡助削减你CSS文件的巨细,加倍简单浏览。css缩写的次要划定规矩请参看《经常使用css缩写语法总结》,这里就不睁开形貌。
二.明白界说单元,除非值为0
健忘界说尺寸的单元是CSS老手广泛的毛病。在HTML中你能够只写width="100",可是在CSS中,你必需给一个正确的单元,好比:width:100pxwidth:100em。只要两个破例情形能够不界说单元:行高和0值。除此之外,其他值都必需紧跟单元,注重,不要在数值和单元之间加空格。
三.辨别巨细写
当在XHTML中利用CSS,CSS里界说的元素称号是辨别巨细写的。为了不这类毛病,我倡议一切的界说称号都接纳小写。
class和id的值在HTML和XHTML中也是辨别巨细写的,假如你必定要巨细写夹杂写,请细心确认你在CSS的界说和XHTML里的标签是分歧的。
四.作废class和id前的元素限制
当你写给一个元素界说class大概id,你能够省略后面的元素限制,由于ID在一个页面里是独一的,而class能够在页面中屡次利用。你限制某个元素毫偶然义。比方:
div#content{/*declarations*/}
fieldset.details{/*declarations*/}
能够写成
#content{/*declarations*/}
.details{/*declarations*/}
如许能够节俭一些字节。
五.默许值
一般padding的默许值为0,background-color的默许值是transparent。可是在分歧的扫瞄器默许值大概分歧。假如怕有抵触,能够在款式表一入手下手就先界说一切元素的margin和padding值都为0,象如许:
*{
margin:0;
padding:0;
}
1234下一页
九.利用子选择器(descendantselectors) CSS初学者不晓得利用子选择器是影响他们效力的缘故原由之一。子选择器能够匡助你勤俭大批的class界说。我们来看上面这段代码: <divid="subnav">
<ul>
<liclass="subnavitem"><ahref="#"class="subnavitem">Item1</a></li>>
<liclass="subnavitemselected"><ahref="#"class="subnavitemselected">Item1</a></li>
<liclass="subnavitem"><ahref="#"class="subnavitem">Item1</a></li>
</ul>
</div> 这段代码的CSS界说是: div#subnavul{/*Somestyling*/} div#subnavulli.subnavitem{/*Somestyling*/} div#subnavulli.subnavitema.subnavitem{/*Somestyling*/} div#subnavulli.subnavitemselected{/*Somestyling*/} div#subnavulli.subnavitemselecteda.subnavitemselected{/*Somestyling*/} 你能够用上面的办法替换下面的代码 <ulid="subnav">
<li><ahref="#">Item1</a></li>
<liclass="sel"><ahref="#">Item1</a></li>
<li><ahref="#">Item1</a></li>
</ul> 款式界说是: #subnav{/*Somestyling*/} #subnavli{/*Somestyling*/} #subnava{/*Somestyling*/} #subnav.sel{/*Somestyling*/} #subnav.sela{/*Somestyling*/} 用子选择器可使你的代码和CSS加倍简便、加倍简单浏览。 十.不必要给背景图片路径加引号 为了节俭字节,我倡议不要给背景图片路径加引号,由于引号不是必需的。比方: background:url("images/***.gif")#333; 能够写为 background:url(images/***.gif)#333; 假如你加了引号,反而会引发一些扫瞄器的毛病。 十一.组选择器(Groupselectors) 当一些元素范例、class大概id都有配合的一些属性,你就能够利用组选择器来制止屡次的反复界说。这能够节俭很多字节。 比方:界说一切题目的字体、色彩和margin,你能够如许写: h1,h2,h3,h4,h5,h6{ font-family:"LucidaGrande",Lucida,Arial,Helvetica,sans-serif; color:#333; margin:1em0; } 假如在利用时,有一般元素必要界说自力款式,你能够再加上新的界说,能够掩盖老的界说,比方: h1{font-size:2em;} h2{font-size:1.6em;}上一页1234下一页
十二.用准确的按次指定链接的款式 当你用CSS来界说链接的多个形态款式时,要注重它们誊写的按次,准确的按次是::link:visited:hover:active。抽取第一个字母是"LVHA",你能够影象成"LoVeHAte"(喜好厌恶)。为何这么界说,能够参考EricMeyer的《LinkSpecificity》。 假如你的用户必要用键盘来把持,必要晓得以后链接的核心,你还能够界说:focus属性。:focus属性的效果也取决与你誊写的地位,假如你但愿聚焦元素显现:hover效果,你就把:focus写在:hover后面;假如你但愿聚焦效果替换:hover效果,你就把:focus放在:hover前面。 十三.扫除浮动 一个十分罕见的CSS成绩,定位利用浮动的时分,上面的层被浮动的层所掩盖,大概层里嵌套的子层超越了外层的局限。 一般的办理举措是在浮动层前面增加一个分外元素,比方一个div大概一个br,而且界说它的款式为clear:both。这个举措有一点牵强,侥幸的是另有一个好举措能够办理,参看这篇文章《HowToClearFloatsWithoutStructuralMarkup》(注:本站将尽快翻译此文)。 下面2种办法能够很好办理浮动超越的成绩,可是假如当你真的必要对层大概层里的工具举行clear的时分怎样办?一种复杂的办法就是用overflow属性,这个办法最后的宣布在《SimpleClearingofFloats》,又在《Clearance》和《Supersimpleclearingfloats》中被普遍会商。 下面那一种clear办法更合适你,要看详细的情形,这里不再睁开叙述。别的关于float的使用,一些优异的文章已说得很分明,保举你浏览:《Floatutorial》、《ContainingFloats》和《FloatLayouts》 十四.横向居中(centering) 这是一个复杂的技能,可是值得再说</p>12下一页
业界越来越关注DIV+CSS的标准化设计,大到各大门户网站,小到不计其数的个人网站,在Div+CSS标准化的影响下,网页设计人员已经把这一要求作为行业标准。 |