CSS基础语法
2014-05-03 22:43
337 查看
下面列出一些基本的css语法规则和数据类型
1. 字符和大小写
css本身对大小写不敏感,但是如果与 HTML 文档一起工作的话,class 和 id 名称对大小写是敏感的,因为那已经超出了css的控制范围。
css标示符(包括选择器中的元素名、类名、ID)只能包含字符[0-9a-zA-Z]以及ISO 10646字符编号U+00A0及以上,加上连字符- 和下划线 _。它们不能以连字符、下划线、数字开头。它们还可以包含转义字符加任何ISO 10646字符作为一个数字编码。
反斜杠的作用:
在字符串中,反斜杠后接一个新行将被忽略。例如,"hello \ <回车> world" 等同与"hello world"。
它取消了特殊的CSS字符的含义。例如,"\""是一个包含双引号的字符串。
反斜杠转义允许作者引用一些在文档中不易输入的字符。
2. css规则
css规则由两个主要的部分构成:选择器,声明块。声明块以左花括号开始({),以与之匹配的右花括号({)结束。其间是零个或多个以分号(;)分割的声明。每个声明由一个属性和一个值组成,它们由冒号(:)分开,中间可以有空格。
格式如下:
如果客户端无法解析某个选择器,将会忽略这条规则。例如,由于无法解析"&”符号, h3, h4 & h5 {color: red } 这条规则将被忽视。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/5f6fc3cc8992c89844702a3130d48ade)
如果客户端无法解析某条声明的属性名或属性值,将会忽视这条声明。例如,p { color: blue; font-vendor: any; font-variant: small-caps },包含无效属性font-vendor的声明将被忽视,j结果等同于p { color: blue; font-variant: small-caps }。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/3fe4cc5eac32687c93a967f5b1fcfd51)
3. 数据类型
css基本数据类型有很多,包括整型和实数型、长度、百分比等,下面只列出几个最常用的。
长度。
有两种类型的长度类型:绝对的和相对的。
相对长度单位根据另一个长度属性来指定长度值,包括
em:相关字体的"font-size",即字高。任意浏览器的默认字体高都是16px。所以未经调整的浏览器都符合:1em=16px。但是em并不是固定的,它会继承父级元素的字体大小。即如果父元素指定字体大小为20px,那么其子元素的如果指定字体大小为1.5em,最后其真实的大小就是20px×1.5=30px,那么如果它下一级的元素如果也指定字体大小为1.5em,那么最后它实际的大小就是30px×1.5=45px。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/f38f6c3a66fc4184c6cd86a795a7271c)
ex:相关字体的"x-height",即该字体下小写字母x的高度。该值与具体字体类型有关,一般为字高的一半。
绝对长度单位有:
in: 英尺 — 1in 等于2.54cm。
cm: 厘米。
mm: 毫米。
pt: 点 — css使用的点等于1in的 1/72。
pc: 十二点活字 — 1pc 等于12pt。
px: 像素点 — 1px 等于 0.75pt。
百分比
百分比总是相对于另外一个值。这个值可以是同一元素的另外一个属性的值,或是其前辈元素的属性值,或者是格式化上下文的一个值(如包含块的宽度,包含块的概念将在后面介绍)。
注意:子元素(通常)继承其父元素的计算值,即相对值(如百分比、em等)经过计算后得到的具体数值。下例中,p元素的'line-height'相对值为200%,计算值为2×16px=32px,则其子元素会继承32px的值,而不是继承百分比值200%使得行高变为2×32px=64px。设想如果继承了百分比值的话,那么每一层的子元素都会将line-height设置成父元素的2倍,那不乱了套了。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/db0bb08946325097a4cd20a213feaf33)
颜色
颜色可以是一个关键字或是RGB数值。以下几种写法都可以得到红色
p { color : red; }
p { color : #ff0000; }
p { color : #f00; }
p { color :
p { color :
注意:#f00通过重复数字转化成#ff0000。使用rgb表示时,0%中的%不可以省略。
4. 继承
上一节的百分比数值中已经提到了继承的概念。简单的说,继承就是子元素从父元素继承某些属性。比如color是可以被继承的。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/60946c62dbf8e6eae659b37034304915)
上图中,子元素em继承了父元素p的color属性。
有的属性却不能被继承,例如border。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201908/15/7ae3c1359bab772e6048b12a946e8010)
具体哪些属性可以被继承,这篇博客做总结的挺好 http://www.cnphp.info/css-style-inheritance.html
css样式表属性可以继承的有如下:
azimuth, border-collapse, border-spacing, caption-side, color, cursor, direction, elevation, empty-cells, font-family, font-size, font-style, font-variant, font-weight, font, letter-spacing, line-height, list-style-image, list-style-position, list-style-type,
list-style, orphans, pitch-range, pitch, quotes, richness, speak-header, speaknumeral,speak-punctuation, speak, speechrate, stress, text-align, text-indent, texttransform, visibility, voice-family, volume, whitespace, widows, word-spacing
基本上分为文本相关的
font-family, font-size, font-style,font-variant, font-weight, font, letter-spacing,line-height,text-align, text-indent, texttransform,word-spacing
和列表相关的
list-style-image, list-style-position,list-style-type, list-style
还有color
1. 字符和大小写
css本身对大小写不敏感,但是如果与 HTML 文档一起工作的话,class 和 id 名称对大小写是敏感的,因为那已经超出了css的控制范围。
css标示符(包括选择器中的元素名、类名、ID)只能包含字符[0-9a-zA-Z]以及ISO 10646字符编号U+00A0及以上,加上连字符- 和下划线 _。它们不能以连字符、下划线、数字开头。它们还可以包含转义字符加任何ISO 10646字符作为一个数字编码。
反斜杠的作用:
在字符串中,反斜杠后接一个新行将被忽略。例如,"hello \ <回车> world" 等同与"hello world"。
它取消了特殊的CSS字符的含义。例如,"\""是一个包含双引号的字符串。
反斜杠转义允许作者引用一些在文档中不易输入的字符。
2. css规则
css规则由两个主要的部分构成:选择器,声明块。声明块以左花括号开始({),以与之匹配的右花括号({)结束。其间是零个或多个以分号(;)分割的声明。每个声明由一个属性和一个值组成,它们由冒号(:)分开,中间可以有空格。
格式如下:
selector {property1: value1; property2: value2; ...}
如果客户端无法解析某个选择器,将会忽略这条规则。例如,由于无法解析"&”符号, h3, h4 & h5 {color: red } 这条规则将被忽视。
<html> <head> <style type="text/css"> h1 {color: red } h3, h4 & h5 {color: red } </style> </head> <body> <h1>h1</h1> <h3>h3</h3> <h4>h4</h4> <h5>h5</h5> </body> </html>
如果客户端无法解析某条声明的属性名或属性值,将会忽视这条声明。例如,p { color: blue; font-vendor: any; font-variant: small-caps },包含无效属性font-vendor的声明将被忽视,j结果等同于p { color: blue; font-variant: small-caps }。
<html> <head> <style type="text/css"> p { color: blue; font-vendor: any; font-variant: small-caps }, </style> </head> <body> <p>hello world</p> </body> </html>
3. 数据类型
css基本数据类型有很多,包括整型和实数型、长度、百分比等,下面只列出几个最常用的。
长度。
有两种类型的长度类型:绝对的和相对的。
相对长度单位根据另一个长度属性来指定长度值,包括
em:相关字体的"font-size",即字高。任意浏览器的默认字体高都是16px。所以未经调整的浏览器都符合:1em=16px。但是em并不是固定的,它会继承父级元素的字体大小。即如果父元素指定字体大小为20px,那么其子元素的如果指定字体大小为1.5em,最后其真实的大小就是20px×1.5=30px,那么如果它下一级的元素如果也指定字体大小为1.5em,那么最后它实际的大小就是30px×1.5=45px。
<html> <head> <style type="text/css"> #fir {font-size:20px} #sec {font-size:1.5em} #thr {font-size:1.5em} </style> </head> <body> <div id='fir'> hello <div id='sec'> <p>hello</p> <p id='thr'>hello</p> </div> </div> </body> </html>
ex:相关字体的"x-height",即该字体下小写字母x的高度。该值与具体字体类型有关,一般为字高的一半。
绝对长度单位有:
in: 英尺 — 1in 等于2.54cm。
cm: 厘米。
mm: 毫米。
pt: 点 — css使用的点等于1in的 1/72。
pc: 十二点活字 — 1pc 等于12pt。
px: 像素点 — 1px 等于 0.75pt。
百分比
百分比总是相对于另外一个值。这个值可以是同一元素的另外一个属性的值,或是其前辈元素的属性值,或者是格式化上下文的一个值(如包含块的宽度,包含块的概念将在后面介绍)。
注意:子元素(通常)继承其父元素的计算值,即相对值(如百分比、em等)经过计算后得到的具体数值。下例中,p元素的'line-height'相对值为200%,计算值为2×16px=32px,则其子元素会继承32px的值,而不是继承百分比值200%使得行高变为2×32px=64px。设想如果继承了百分比值的话,那么每一层的子元素都会将line-height设置成父元素的2倍,那不乱了套了。
颜色
颜色可以是一个关键字或是RGB数值。以下几种写法都可以得到红色
p { color : red; }
p { color : #ff0000; }
p { color : #f00; }
p { color :
rgb(255,0,0); }
p { color :
rgb(100%,0%,0%); }
注意:#f00通过重复数字转化成#ff0000。使用rgb表示时,0%中的%不可以省略。
4. 继承
上一节的百分比数值中已经提到了继承的概念。简单的说,继承就是子元素从父元素继承某些属性。比如color是可以被继承的。
<html> <head> <style type="text/css"> p {color:red;} </style> </head> <body> <p style='color:red;'> hello world <em>em hello world</em> hello world </p> </body> </html>
上图中,子元素em继承了父元素p的color属性。
有的属性却不能被继承,例如border。
<html> <head> <style type="text/css"> p{border:solid;} em.hasbor{border:solid;} </style> </head> <body> <p> hello world <em>em hello world</em> <em class='hasbor'>em hello world</em> </p> </body> </html>
具体哪些属性可以被继承,这篇博客做总结的挺好 http://www.cnphp.info/css-style-inheritance.html
css样式表属性可以继承的有如下:
azimuth, border-collapse, border-spacing, caption-side, color, cursor, direction, elevation, empty-cells, font-family, font-size, font-style, font-variant, font-weight, font, letter-spacing, line-height, list-style-image, list-style-position, list-style-type,
list-style, orphans, pitch-range, pitch, quotes, richness, speak-header, speaknumeral,speak-punctuation, speak, speechrate, stress, text-align, text-indent, texttransform, visibility, voice-family, volume, whitespace, widows, word-spacing
基本上分为文本相关的
font-family, font-size, font-style,font-variant, font-weight, font, letter-spacing,line-height,text-align, text-indent, texttransform,word-spacing
和列表相关的
list-style-image, list-style-position,list-style-type, list-style
还有color
相关文章推荐
- CSS从零开始(1)--CSS基础语法
- 1.jQuery基础语法 2.jQuery选择器、操作页面文档元素 3.jqueryDOM操作 4.jqueryCSS操作 5.Jquery事件 6.Jquery动画
- HTML && CSS 学习笔记(3)CSS(关键词:CSS/基础语法)
- CSS基础语法
- CSS+DIV 的语法基础
- CSS基础语法
- CSS基础语法
- css的语法介绍 css基础
- css基础语法第二讲
- Css基础-介绍及语法
- CSS 基础语法
- CSS 基础语法
- CSS基础语法和CSS经常用到的知识点总结
- 前端基础----CSS语法、CSS四种引入方式、CSS选择器、CSS属性操作
- CSS语法基础CSS语法基础1. 基本语法
- CSS基础一:CSS基本语法
- [JavaWeb基础] 028.CSS简介和基础语法
- CSS基础语法(二)
- HTML+CSS基础入门-第一天(HTML-HTML语法)