《CSS权威指南》学习记录——颜色和长度单位

数字

CSS中有两类数字:整数和实数。数字类型主要作为其他值类型的基础,某些情况下,也可以直接作为属性的值。

百分数

百分数值几乎总是相对于另一个数值:可能是同一元素的另一个属性值,也可能是从父元素那继承的值,或者是祖先元素的值。

颜色

命名颜色

CSS规范定义了一些颜色,这些颜色可以直接根据其名字来使用。不过,可选择的颜色数量很少,即使大多数web浏览器提供了更多的命名颜色,但在大多数情况下还是不够用~~。

用RGB指定颜色

任何颜色都可以由红绿蓝三原色组合而成。基于此,有以下几种指定颜色的方式:

函数式RGB颜色
p{color:rgb(255,255,255);}/*黑色*/
p{color:rgb(0%,0%,0%);}/*白色*/
p{color:rgb(-1,256,30);}/*0,255,30*/
p{color:rgb(3.5%,4.4%,%300);}/*有些用户代理会进行四舍五入*/
/*小数只限于百分数记法,整数三元组不能用小数*/

关于百分数三元组和整数三元组的转换有一个简单的计算公式:将百分数分别乘上255,结果再四舍五入即得到整数三元组。

十六进制RGB颜色
p{color:#12ad98;}
p{color:#123;}/*#112233的简写形式*/

alt text

web安全颜色

wen安全颜色是指,在256色的计算机系统上总能避免抖动的颜色。web安全颜色可以表示为RGB值为20%或51(十进制)或33(十六进制)的倍数。0和0%也是一个安全色。例如:

rgb(40%,100%,80%);
rgb(0,204,153);
#693;

长度单位

所有长度单位都可以接受正数和负数(有些只接受正数),其后跟一个2字母的单位(0后不用跟单位)。长度单位可以划分为两类:绝对长度单位和相对长度单位。

绝对长度单位

事实上很少使用绝对长度单位,但还是介绍一下:
1.英寸(in)
2.厘米(cm)
3.毫米(mm)
4.点(pt)
5.派卡(pc)
换算:1in=2.54cm=25.4mm=72pt=6pc。

绝对单位在定义打印文档的样式表时更为有用,在此通常会以英寸、点和派卡来度量长度。

相对长度单位

共有3种相对长度单位:em,ex,px。
1.em-height和x-height
在CSS中,一个em定义为一种给定字体的font-size值。例如:如果一个元素的font-size的值为14px,则1em的值即为14px。
ex是指所用字体中小写x的高度。因此,如果两个段落的文本大小都是24点,但字体不同,那么各段相应的ex值也可能不同。然而实际上,大多数用户代理只是将ex的值置为em值的一半,因为大多数字体都没有内置ex的值,而且算起来很麻烦。不过以后应该会有更好的方法来取代这种处理。

2.px
像素直观地说就是显示器上的一个个点。一般当我们希望能够灵活的调节文本大小,或是让图像随文本的大小缩放时,最好不要用像素来表示。不过,用像素能非常方便的表示图像的大小,因为图像的高度和宽度本身就是像素数。

总之,在大多数情况下还是使用相对长度单位,尤其是em和px,可以更加灵活地控制样式。

URL

分为绝对URL和相对URL(Uniform Resource Locator)。在CSS中,相对URL要相对于样式表本身,而不是相对于使用该样式表的HTML文档。某些浏览器会相对于HTML而不是样式表来解释相对URL,这时就要使用绝对URL。
在样式表中链接外部样式表:

@import url(xxx);

注意,url和括号之间不能有间隔。

关键字

有时一个值需要用一个词去描述,这个词就叫做关键字。
例如:

a:link,a:visited{text-decoration:none;}

其中,none就是一个关键字。相同的关键字对于不同的属性可能会有不同的行为。

inherit

inherit使一个属性的值与父元素的值相同。大多数情况下,属性本身会自然继承,但也有用处。比如:正常情况下,直接指定的样式会优先于继承的样式,使用inherit就可以反过来。

CSS2单位

1.角度值。用于定义给定的声音从什么位置发出。共有3种角度:度(deg)、弧度(rad)、梯度(grad)。
2.时间值。用于指定语音元素之间的延迟。可以表示为毫秒(ms)、秒(s)。
3.频率值。用于为语音浏览器可以产生的声音声明一个给定频率。可以表示为赫兹(Hz)、兆赫兹(MHz)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值