前边已经说过一部分css的语法了,只是一些基础语法,有些方面还不够全面,下面就看下css详细点的语法吧。也许会有好多重复的地方,但是为了总结,也没关系啦。
1、css数据类型::
整数:整数前可以包括正(+)负(-)号,但是不能有小数。
实数:实数包含整数,而且可以有小数部分。
百分比:相当于一个实数加上%,百分比总是一个相对值。
字符串:一个字符串是一个任意字符的序列,而且字符串被包含在单引号或双引号中。常用于content属性的值。
CSS字符串应使用单引号或双引号括起来,但是CSS关键词不能使用引号括起来。
CSS字符串支持转义字符,转义字符是使用反斜杠标明的特殊字符。
content属性: 定义字符串,此字符串将加到引用它的标签中。
长度:实数后边一个长度单位(如px,em……)。长度分为绝对长度与相对长度。
绝对长度不依赖于环境(显示器、分辨率、操作系统等)。
相对长度依赖于用户使用的环境。
2、css颜色表示::
颜色表示法有颜色值,rgb,rgb百分比,rgba,16进制,短16进制,hls,hlsa 7种表示法。下面介绍几个常用的:
RGB(A)表示法:R代表红(red),G代表绿(green),B代表蓝(blue),A代表不透明度(alpha)的缩写。用法:rgba(100%,20%,0,30);
短16进制颜色表示法:当16进制颜色表示法中的两个表示颜色值的数字一样的时候的简写。如下:color:#ff0000
= color:#f00
颜色值表示法:就是用颜色的英文名字来表示。
3、全局资源标识符URL:
url:Uniform Resource Identifier的缩写,用于唯一定位web上的资源,包括HTML文档,CSS文件,图像,程序等。
URI包括两部分:URL(Universal Resource Locator)统一资源地址与URN(Universal Resource Name)统一资源名称。
css属性中指定url的函数是:url();
一般用来:指定背景图片:background-image:url(1.jpg);
定位样式表:url(http://www.abc.com/style.css);
4、@规则::
@规则:以一个关键词@开始,紧跟在后的是一个标示符。
@import -- 加载外部样式表。
@media -- 指定媒体类型。
5、css的层叠与继承::
继承:指父元素的规则也会适用于子元素。比如body设置color:Red;那么他内部元素如果没有其他的规则,也将会变成红色。
继承得来的规则没有特殊性。
层叠:文档中的一个元素可能同时被多个css选择器选中,每个选择器都有一些css规则,这就是层叠。
这些规则有可能不矛盾的,自然这些规则将会同时起效,然而有些规则是相互冲突的,为此需要为每条规则制定特殊
性,当发生冲突的时候必须选出一条最高特殊性的规则来应用。CSS规则的特殊性可以用4个整数来表示,如下:
对于规则中的每个ID选择符,特殊性加0,1,0,0
对于规则中每个类选择符和属性选择符以及伪类,特殊性加0,0,1,0
对于规则中的每个元素名或者伪元素,特殊性加0,0,0,1
对于通配符,特殊性加0,0,0,0.
对于内联规则,特殊性加 1,0,0,0
最终得到结果就是这个规则的特殊性。两个特殊性的比较类似字符串大小的比较,是从左往右依次比较,第一个数字
大的规则的特殊性高。
此外:css还有一个!important标签,用来改变css规则的特殊性。实际上,在解析css规则特殊性的时候,是将具有
!important的规则和没有此标签的规则利用上述方法分别计算特殊性,分别选出特殊性最高的规则。最终合并的时候,具
有任何特殊性的带有!important标记的规则胜出。
对于本篇文章,有几点要说的:
1、对于颜色表示那部分,我只是记录了我觉得常用的几种方法。对于那些其他的,如果有兴趣的可自行查阅。
2、@规则那部分,说实话,我也没弄懂是怎么回事,但是,对于列举出的两个标识符,会用,应该就不会有很大问题了。
3、对于层叠这部分,有点复杂,但是对于真正的编程,如果你不是专门搞界面的,我觉得没必要去详细的研究的。有兴趣的
可以进一步了解。