css语言基础--css属性值的规范

  1 1.属性值的数据类型和数据单位
  2 
  3     1.1长度:有两种长度单位,一种是相对长度单位,一种是绝对长度单位
  4         1.1.1:相对长度单位:em、ex、px、gd、rem、vw、vh、ch
  5 
  6             以下是几个常用的相对长度单位:
  7             (1)em单位:em单位等于该元素font-size属性的计算值,一个例外情况是font-size属性值本身出现了em单位,这    
  8 
  9                   时它参造其父元素的font-size属性值。
 10             (2)ex单位:ex单位也被称为x-height。之所以叫x-height,是因为它通常等于小写字母x的高度,即使字体中没有x    
 11 
 12                      字母,ex单位还是会有定义的。该单位取决于每个字体的规定。
 13             (3)px单位:px也就是像素单位,它是相对于用户浏览器设备的分辨率,最常见的就是指计算机的显示器。
 14                 
 15         1.1.2:绝对长度单位:绝对长度单位只有在其输出介质的物理特性已知的情况下才有用。in(英寸)\cm\mm\pt(点)\pc(12pt)
 16 
 17     1.2百分比值
 18         百分比的值总是相对于另外一个值而言,如相对一个长度。如果一个属性允许使用百分比作为属性值,那么该属性也肯定定    
 19 
 20         义了百分比所相对的绝对值。这个绝对值可以是同一元素的另外一个样式属性的值,也可以是其父元素的样式属性值,或是        
 21 
 22         格式化环境的值。
 23           如:line-height属性的百分值就是相对于元素本身的font-size属性值。下面的代码中,p元素的line-height属性的计算值    
 24 
 25             是12px。
 26             p{font-size:10px;line-height:120%;}
 27           如果根元素的样式属性指定了百分比值,并且该百分比值又被定义为相对某个属性的继承值,那么结果值就是百分比乘以    
 28 
 29           那个属性的初始值。
 30     1.3颜色
 31         颜色可以用多种方式表示,可以是名称,也可以是RGB数字或HSL数字。
 32 
 33         1.3.1颜色名称关键字
 34             常见的有white、green、red等,当然用户也可以使用svg颜色名称关键字等。如:p{color:red;}
 35 
 36         1.3.2RGB颜色模型(用在颜色的数字表示中)
 37             如:em{color:#f00}(16进制表示法)
 38                em{color:#fff000}
 39                em{color:rgb(255,0,0)}函数表示法
 40 
 41         1.3.3RGBA颜色模型
 42             RGBA颜色模型是对RGB颜色模型的扩展,包括alpha通道(即透明度(范围:0到1))。
 43             例子:将背景颜色设置为具有50%透明度的红色,可以在样式表中包含以下两个css声明中任何一个。
 44                 background-color:rgba(255,0,0,0.5);/background-color:rgba(100%,0,0,0.5);
 45 
 46         1.3.4HSL颜色模型
 47             HSL是Hue(色相)、Saturation(饱和度)、Lightness(亮度)的简称。HSL把颜色描述在双圆锥体内的点,这个双圆锥    
 48 
 49             的中心轴取值为自底部的黑色到顶部白色而在他们中间是灰色。
 50             hsl颜色模型格式:hsl(h,s,l);
 51                 h是一个色盘中的颜色,色彩选择通过度数来确定,0度是红色,120度是绿色,240是蓝色。
 52                 s是该色彩使用了多少,用百分比表示。0%表示灰度,也就是没有使用该颜色,而100%表示该颜色饱满。
 53                 l是该色彩有多亮,也用百分比表示。较低较暗,较高较亮。0%与100%分别表示为黑与白。
 54             如:定义红色背景:background-color:hsl(0,100%,50%);
 55 
 56         1.3.5HSLA颜色模型
 57             对HSL颜色模型的扩展。与HSL颜色模型相似,不过多了最后一个透明度而已。
 58                 如:定义透明度为50%的红色背景:background-color:hsl(0,100%,50%,0.5);
 59                 
 60     1.4其他数据类型
 61         css定义的一些数据类型目前一般用得较少,很多数据类型一般用于语音介质
 62         1.4.1角度(deg、grad、rad、turn)
 63         1.4.2时间(s、ms)时间不能为负值
 64         1.4.3频率(Hz、kHz)频率不能为负值    
 65 
 66 2.函数
 67     2.1.1atrr()函数
 68         该函数用于获取一个样式属性的值,语法如下:attr(ident,[,<type>[,<value>]]).第一个参数ident指定样式属性名,将获 
 69                 取该元素的ident样式属性的值。还可以指定命名空间前缀,以限定属性。名称空间和属性之间用“|”分割。
 70         第二个参数type是可选的,如果第三个参数出现,那么第二个参数就必须出现,该参数指示浏览器怎么解释属性值。第二个
 71         参数可以是(string,url,color,integer,number,length等)。如果第二个参数缺失,那么默认是string。
 72         如:width:attr(length,em);//默认值是0
 73 
 74     2.1.2url()函数
 75         格式是使用url()函数,括号中包括uri地址,地址可以是绝对地址,也可以是相对地址。如:background:url(yellow.jpg)
 76 
 77     2.1.3calc()函数
 78         该函数用来计算长度值,任何长度值都可以进行计算,包括相对长度与绝对长度。
 79         如:width:calc(100%3-2*1em-2*1px);
 80 
 81     2.1.4counter()函数
 82         计数器使用标识符表示。要引用一个计数器的值,可以采用下面两种语法格式:
 83             (1)counter(标识符) "符号1" "符号2" ... "符号n"
 84             (2)counter(标识符,列表样式类型)"符号1" "符号2" ... "符号n"
 85         要引用有名称相同的嵌套计数器序列,也有两种语法格式:
 86             (1)counters(标识符,字符串) "符号1" "符号2" ... "符号n"
 87             (2)counters(标识符,字符串,列表样式类型)"符号1" "符号2" ... "符号n"
 88                css中,计数器只可以有content属性引用。
 89 
 90 3.属性值的计算步骤
 91     一个属性最终值的获得要经过4步计算:
 92         (1)根据css规则中定义的值(称为"指定值")\(2)被转换成一个用于继承的值(称为"计算值")\(3)在需要的情况下转换成一
 93              个绝对的值(称为"使用值")\(4)根据本地环境的限制条件最终转换成另一个值(称为"呈现值")
 94     3.1指定值:属性的初始值
 95     3.2计算值:指定值经过计算变成计算值
 96     3.3使用值:将计算值和依赖关系综合考虑后获得的绝对值
 97     3.4实际值:依据显示介质后的值
 98 
 99 4.属性的继承
100 
101     文档树种元素的某些样式属性的属性值可以被子元素继承,css规范为元素的每一个样式属性都规定了它是否被继承。当发生继承时,
102     继承的是父元素的计算值,而从父元素那里继承的计算值将变成子元素的指定值和计算值。
103         如:body{font-size:10pt;}h1{font-size:130%;}
104     4.1指定属性值为inherit
105        有些css属性可以被继承,但有些不能被继承。为了解决这部分属性继承问题,css规定每一个属性可以有一个为关键字inherit的
106        指定值,即对于任何给定的元素,该属性的值和它的父元素相同属性的计算值相同。但是,有一个例外,如果inherit被设置在根
107            元素上,没有父元素就不能继承了,那么该属性将被赋予初始值。定义属性值inherit可以继承父元素的值。
108         如:body{color:black;baockground:white;}  *{color:inherit!important;backgound:transparent!important;}color的值 
109                   将从body元素继承。

 

posted @ 2013-02-26 00:23  全力以赴001  阅读(622)  评论(0编辑  收藏  举报