当前位置: 首页 > 图文教程 > .Net技术 > C# > C#:使用CSS的8种技巧

C#
C#和Java的区别
提高C#编程水平的50个要诀
GridView 删除/更新/取消
c#线程
C#泛型有什么好处
总体了解C#
C#2.0匿名函数
GridView中添加一个CheckBox列
C#2.0介绍之Iterators(迭代器)
.NET与Java间进行Web Service交互的选择
C# 2010命名和可选参数的新特性
利用C#远程存取Access数据库
C#中foreach基础使用方法
C#中用鼠标移动页面功能的实现
C# 4.0中泛型协变性和逆变性详解
C#:C# .Net中的类型相互转换教程
C#:C#中的基元类型
C#:语言中的重要知识详细介绍与解释
C#:浅谈C#中的集合对象(Collections)
C#:C#发起邮件会议

C#:使用CSS的8种技巧


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

在网上论坛上经常看到一些朋友对CSS的提问,他们总是不能很好的控制CSS,影响CSS的效率发挥。今天整理了一下资料,下面我给大家说说css8种技巧:

.使用css缩写

使用缩写可以帮助减少你CSS文件的大小,更加容易阅读。css缩写的主要规则请参看《常用css缩写语法总结》,这里就不展开描述。

.明确定义单位,除非值为0

忘记定义尺寸的单位是CSS新手普遍的错误。在HTML中你可以只写width="100",但是在CSS中,你必须给一个准确的单位,比如:width:100px width:100em。只有两个例外情况可以不定义单位:行高和0值。除此以外,其他值都必须紧跟单位,注意,不要在数值和单位之间加空格。

.区分大小写

当在XHTML中使用CSSCSS里定义的元素名称是区分大小写的。为了避免这种错误,我建议所有的定义名称都采用小写。 classid的值在HTMLXHTML中也是区分大小写的,如果你一定要大小写混合写,请仔细确认你在CSS的定义和XHTML里的标签是一致的。

.取消classid前的元素限定

当你写给一个元素定义class或者id,你可以省略前面的元素限定,因为ID在一个页面里是唯一的,而clas s可以在页面中多次使用。你限定某个元素毫无意义。例如: div#content { /* declarations */ } fieldset.details { /* declarations */ } 可以写成 #content { /* declarations */ } .details { /* declarations */ } 这样可以节省一些字节。

.默认值

通常padding的默认值为0background-color的默认值是transparent。但是在不同的浏览器默认值可能不同。如果怕有冲突,可以在样式表一开始就先定义所有元素的marginpadding值都为0,象这样: * { margin:0; padding:0; }

.不需要重复定义可继承的值

CSS中,子元素自动继承父元素的属性值,象颜色、字体等,已经在父元素中定义过的,在子元素中可以直接继承,不需要重复定义。但是要注意,浏览器可能用一些默认值覆盖你的定义。

.最近优先原则

如果对同一个元素的定义有多种,以最接近(最小一级)的定义为最优先,例如有这么一段代码 Update: Lorem ipsum dolor set CSS文件中,你已经定义了元素p,又定义了一个class"update"

p { margin:1em 0; font-size:1em; color:#333; } .update { font-weight:bold; color:#600; } 这两个定义中,class="update"将被使用,因为classp更近。你可以查阅W3C的《 Calculating a selectors specificity 了解更多。

. 调试技巧:层有多大?

当调试CSS发生错误,你就要象排版工人,逐行分析CSS代码。我通常在出问题的层上定义一个背景颜色,这样就能很明显看到层占据多大空间。有些人建议用border,一般情况也是可以的,但问题是,有时候border 会增加元素的尺寸,border-topboeder-bottom会破坏纵向margin的值,所以使用background更加安全些。 另外一个经常出问题的属性是outlineoutline看起来象boeder,但不会影响元素的尺寸或者位置。只有少数浏览器支持outline属性,我所知道的只有SafariOmniWeb、和Opera

 

看了css8中技巧是不是对css更进一步了解了呢?本文主要是针对新手的一些问题,希望对大家有送帮助。