CSS2快速参考_CSS/HTML
一、什么是CSS?
CSS是Cascading Style Sheet的缩写,有些书上把它译为“层叠样式单”或“级联样式单”(下文简称“样式单”),在1997年W3C颁布HTML4标准的同时也公布了有关样式单的第一个标准CSS1。样式单是对以前的HTML(3.2以前的H TML版本)语法的一次重大革新,以前的HTML版本中,各种功能的实现是通过标记元素实现的,这也造成了各个浏览器厂商为了标新立意创建各种只有自家支持的标记,各种标记互相嵌套,就可以达到不同的效果,比如要在一段文字中把一部分文字变成红色,H TML3.2中应该是这样的:
这里显示红色字
而在样式单中,把某些标记(如上例中的“font”标记)属性化,利用样式单,上例可以变成:
这里显示红色字
这就是样式单的全部功能吗?远远不是!前面说过样式单是DHTML的一部分,建立样式单的真正意义在于把对象真正引入了HTML,使得可以使用脚本程序(如javascript、VBScript)调用对象属性,并且可以改变对象属性,达到动态的目的,这在以前的H TML中是无法实现的,如果你使用过如VB等面向对象的编程工具,你会更快的发现,用样式单做DHTML是多么容易。样式单的另一项贡献是简化了HTML中各种繁琐的标记,使得各个标记的属性更具有一般性和通用性,并且样式单扩展了原先的标记功能,能够实现更多的效果,样式单甚至超越了W eb页面的本身显示功能,而把样式扩展到多种媒体上,显示了难以抗拒的魅力。
样式单自从CSS1的版本之后,又在1998年5月发布了CSS2版本,样式单得到了更多的充实。Internet Explorer4和Netscape Navigator4都宣传支持样式单,但从各方面来看IE4的效果都要超过NE4,这是因为IE4和NE4的javascript文档模型(DOM)不同而造成的,从表面看,二者的模型区别不大,但实质上却是大相径庭,IE4的模型能够更加容易的把动态效果引入W eb页面,虽然现在IE4的模型只有微软自己支持,但它却已被清楚的写入了W3C的DHTML标准;而NE4的样式单并不能通过脚本调用对象的属性,说的不好听一点,它的样式单只是徒有其表罢了。(Netscape公司自己开发了一种样式单称作J SSS,它利用javascript来定义样式,但是并没有得到W3C的承认。)
二、进一步了解样式单
Cascading Style Sheet中的Cascading是“层叠”的意思,也就是说在同一个Web文档中可以有多个样式单存在,这些样式单根据所在的位置,拥有不同的优先级,优先级越高,就会被最后在显示时采用。从样式单插入的形式来看可以分为三种:
内联式样式单:它利于现有的HTML标记,把特殊的样式加入到那些由标记控制的信息中,比如刚才的例子。
嵌入式样式单:它和javascript一样可以嵌入到HTML文件的头部中去(和标记之间),使用容器装载,例如:“”,这样会对页面中所有
标记都起作用。
外部式样式单是一种保存在外部的样式单文件,外部文件以.CSS为扩展名,例如“”。
在应用时可以根据需要随意运用以上三种方式,但在实际中内联式样式单和嵌入式样式单使用得更多一些。
三、样式单的语法特征
样式单有自己独特的书写方法,掌握了它的语法特征,再了解它的各种属性,那么你会发现在Web页面中运用样式单会是多么轻松。例如有一个最简单的HTML文档:
Text goes here…
我们可以用嵌入式样式单规定样式。
Some sample text that has no other...
相反的,使用clear属性将禁止元素在BOX的左方或右方飘浮:
属性名称: 'clear'
属性值: left| right|both|none
初始值: none
适合对象: 所有元素
是否继承: no
百分比备注: 被禁止
绝对位置属性:
绝对位置属性有四个属性:top、right、bottom和left,属性值为长度单位或百分数:
属性名称: 'top'、'right'、'bottom'、'left'
属性值:
初始值: none
适合对象: 所有元素
是否继承: no
百分比备注: 被禁止
利用以上属性,用户就可以精确定义元素的位置,如:
I used two red hyphens to serve as a change bar. They
will "float" to the left of the line containing THIS
--
word.
z-index属性:
在CSS中允许元素的重叠显示,这样就有一个显示顺序的问题,z-index属性描述了元素的前后位置,如果把电脑屏幕看作X-Y平面的话,那么Z轴就是垂直于屏幕的,z-index使用整数表示元素的前后位置,数值越大,就会显示在相对靠前的位置,并且C SS同意在z-index中使用负数。
属性名称: 'z-index'
属性值: auto|
初始值: auto
适合对象: 使用position属性的元素
是否继承: no
百分比备注: 被禁止
width属性:
规定BOX的width属性,可以使BOX的宽度不依靠它所包含的内容的多少:
属性名称: 'width'
属性值:
初始值: auto
适合对象: 块元素
是否继承: no
百分比备注:根据父元素的width而定
在CSS中还提供了min-width和max-width属性,使得BOX的宽度在最小宽度和最大宽度之间。
属性名称: 'min-width'
属性值:
初始值: 0
适合对象: all
是否继承: no
百分比备注:根据父元素的width而定
属性名称: 'max-width'
属性值:
初始值: 100%
适合对象: all
是否继承: no
百分比备注:根据父元素的width而定
height属性:
相同的BOX还有height属性来控制本身的高度:
属性名称: 'height'
属性值:
初始值: auto
适合对象: 块元素
是否继承: no
百分比备注:根据父元素的height而定
在CSS中还提供了min-height和max-height属性,使得BOX的高度在最小高度和最大高度之间。
属性名称: 'min-height'
属性值:
初始值: 0
适合对象: all
是否继承: no
百分比备注:根据父元素的height而定
属性名称: 'max-height'
属性值:
初始值: 100%
适合对象: all
是否继承: no
百分比备注:根据父元素的height而定
overflow属性:
在规定元素的宽度和高度时,如果元素的面积不足以显示全部内容的话就要用到overflow属性:
属性名称: 'overflow'
属性值: visible | hidden | scroll | auto
初始值: visible
适合对象: 元素的position属性
是否继承: no
百分比备注: 被禁止
属性值含义如下:
visible:扩大面积以显示所有内容。
hidden:隐藏超出范围的内容。
scroll:在元素的右边显示一个滚动条。
auto:当内容超出元素面积时,显示滚动条。
clip属性:
CSS还提供了一种clip属性,可以把元素区域剪切成各种形状,但目前提供的只有方形一种:
属性名称: 'clip'
属性值:
初始值: auto
适合元素: 元素的position属性被设为absolute
是否继承: no
百分比备注: 被禁止
line-height和vertical-align属性:
line-height属性可以规定元素内部的行间距,使用长度单位或百分数:
属性名称: 'line-height'
属性值: normal |
初始值: normal
适合对象: 所有元素
是否继承: yes
百分比备注:根据元素的字体大小而定
例如下面的例子,虽然表达方式不同,但结果一样:
DIV { line-height: 1.2; font-size: 10pt }
DIV { line-height: 1.2em; font-size: 10pt }
DIV { line-height: 120%; font-size: 10pt }
vertical-align属性决定元素在垂直位置的显示:
属性名称: 'vertical-align'
属性值: baseline | sub | super | top | text-top | middle | bottom | text-bottom |
初始值: baseline
适合对象: inline elements
适合继承: no
百分比备注: 根据元素的line-height属性而定
属性值含义如下:
baseline:与元素的基线对齐。
middle:与元素中部对齐。
sub:字下沉。
super:字上升。
text-top:文本顶部对齐。
text-bottom:文本底部对齐。
Top:和本行位置最高元素对齐。
Bottom:和本行位置最低元素对齐。
Visibility属性:
该属性用于控制元素的显示或隐藏:
属性名称: 'visibility'
属性值: inherit | visible | hidden
初始值: inherit
适合对象: 所有元素
是否继承: 如果该值为inherit,则继承父元素属性
百分比备注: 被禁止
4、颜色和背景(Color and Background)属性:
这里介绍有关CSS中前景色和背景颜色、图片的设定方法。
color属性:
color属性用于设定元素的前景色:
属性名称: 'color'
属性值:
初始值: 根据用户的初始值而定
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
color属性的值可以是十六进制数值、rgb()函数或CSS承认的颜色名称。如:
EM { color: red }
EM { color: rgb(255,0,0) }
背景属性:
background-color属性用于设定背景色,初始值为透明:
属性名称: 'background-color'
属性值:
初始值: transparent
适合对象: 所有元素
是否继承: no
百分比备注: 被禁止
backgroud-image属性用于设定背景的图片:
属性名称: 'background-image'
属性值:
初始值: none
适合对象: 所有元素
是否继承: no
百分比备注: 被禁止
其中url可以为绝对地址,也可以是相对地址,例如:
BODY { background-image: url(marble.gif) }
P { background-image: none }
以上两个属性利用普通的HTML属性也可以实现,下面的属性是CSS对原有HTML的扩展。
background-repeat属性用来描述背景图片的重复排列方式:
属性名称: 'background-repeat'
属性值: repeat | repeat-x | repeat-y | no-repeat
初始值: repeat
适合对象: 所有元素
是否继承: no
百分比备注: 被禁止
其中属性值的含义为:
repeat:沿X轴和Y轴两个方向重复显示图片。
repeat-x:沿X轴方向重复图片。
repeat-y:沿Y轴方向重复图片。
none:不重复图片。
例如:
BODY {
background: red url(pendant.gif);
background-repeat: repeat-y;
}
/*表示沿Y轴重复图片“pendant.gif”,其余部分以红色为背景色*/
background-attachment属性表示在滚动整个文档时,背景图片的显示方式。它的属性值有两种:fixed和scroll,fixed相当于IE4里的水印效果,也就是说在拖动文档时,背景相对是静止的,scroll则和文档一起滚动。
background-position属性用来指定背景图片显示的位置:
属性名称: 'background-position'
属性值: [
初始值: 0% 0%
适合对象: 容器元素
是否继承: no
百分比备注: refer to the size of the element itself
其中属性值含义为:
“top left”和“left top”表示“0% 0%”。
“top”、“top center”和“center top”表示“50% 0%”。
“right top”和“top right”都表示“100% 0%”。
“left”、“left center”和“center left”表示“0% 50%”。
“center”和“center center”表示“50% 50%”。
“right”、“right center”和“center right”都表示“100% 50%”。
“bottom left”和“left bottom”表示“0% 100%”。
“bottom”、“bottom center”和“center bottom”都表示“50% 100%”
“bottom right”和“right bottom”表示“100% 100%”。
例如:
BODY { background: url(banner.jpeg) right top } /* 100% 0% */
BODY { background: url(banner.jpeg) top center } /* 50% 0% */
BODY { background: url(banner.jpeg) center } /* 50% 50% */
BODY { background: url(banner.jpeg) bottom } /* 50% 100% */
background属性是以上背景属性的快捷方式,属性和顺序如下:
属性名称: 'background'
属性值: | | | | | | | |
适合对象: 所有元素
是否继承: no
百分比备注: 只在background-position中容许使用
CSS2快速参考之四
关键词:其他
5、字体(Font)属性:
这里定义了关于字体的各种属性。
font-family属性定义字体的名称,可以是一个字体的名称,也可以是一类字体的名称,字体的名称一定要和计算机系统里的完全一样:
属性名称: 'font-family'
属性值: [[
初始值: 根据用户定义而定
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
有些计算机系统里如果没有样式单要求的字体,可以再设一个次字体以备万一。例如:
BODY { font-family: Baskerville, "Heisi Mincho W3", Symbol, serif }
family-name是指确定的某字体,如Heisi Mincho W3,generic-family指某一类字体,如serif。
font-style属性描述字体的倾斜程度:
属性名称: 'font-style'
属性值: normal | italic | oblique
初始值: normal
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
font-variant属性:
属性名称: 'font-variant'
属性值: normal | small-caps
初始值: normal
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
一个使用了small-caps属性的元素中的小写字母看起来要比正常的大写字母小一些。
font-weight属性用来描述字重。
属性名称: 'font-weight'
属性值: normal | bold | bolder | lighter | 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900
初始值: normal
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
100到900代表9种不同的字重,400代表normal,700代表bold,900是最重的字体,bolder或lighter表示字体的字重比父元素高或低一级,比如父元素字重为400,则bolder代表字重500,如果父元素本身字重为9 00,那么bolder后,字重还是900,同样的lighter也一样。有些字体并没有100到900那么全的字重,也许是从300到700,那么字重的最小和最大值也为300到700。例如:
P { font-weight: normal } /* 400 */
H1 { font-weight: 700 } /* bold */
font-size属性描述字体的大小:
属性名称: 'font-size'
属性值:
初始值: medium
适合对象: 所有元素
是否继承: yes
百分比备注: relative to parent element's font size
该属性可以使用绝对大小,也可以使用相对大小,其中绝对大小可以使用,如下关键字表示:
xx-small | x-small | small | medium | large | x-large | xx-large
分别代表最小、较小、小、中等、大、较大和最大。
相对大小可以使用:larger 或smaller描述。
例如:
P { font-size: 12pt; }
BLOCKQUOTE { font-size: larger }
EM { font-size: 150% }
EM { font-size: 1.5em }
Font属性是以上属性的快捷方式,属性如下:
属性名称: 'font'
属性值: [ [ | | | | ]? [ / ]? ]
适合对象: 所有元素
是否继承: yes
百分比备注: 只在font-size使用
例如:
P { font: 12pt/14pt sans-serif } P { font: 80% sans-serif }
P { font: x-large/110% "new century schoolbook", serif }
P { font: bold italic large Palatino, serif }
P { font: normal small-caps 120%/120% fantasy }
6、文本(Text)属性:
这里的属性将影响WEB文档中的文本显示情况。
text-indent属性描述文本的缩进程度:
属性名称: 'text-indent'
属性值:
初始值: 0
适合对象: 容器元素
是否继承: yes
百分比备注: 根据父元素的宽度而定
下面的例子表明段落的缩进值为3em:
P { text-indent: 3em }
Alignment属性表明文本的对齐方式:
属性名称: 'alignment'
属性值: left | right | center | justify
初始值: 依照用户定义
适合对象: block-level elements
是否继承: yes
百分比备注: 被禁止
text-decoration属性描述对文本的修饰方法:
属性名称: 'text-decoration'
属性值: none | [ underline | | overline | | line-through | | blink ]
初始值: none
适合对象: 所有元素
是否继承: no (see clarification below)
百分比备注: 被禁止
属性值含义分别为:
underline:下划线。
overline:上划线。
line-through:删除线。
blink:闪烁(如同Navigator中的blink标记的功能)
text-shadow属性可以为文本加入阴影的特效:
属性名称: 'text-shadow'
属性值: none |
初始值: none
适合对象: all
是否继承: No
百分比备注: 只在描述透明度时有效
例如:
P { text-shadow: black }
上例将在文本的右下方显示黑色阴影,另外阴影将增大BOX的面积。
letter-spacing属性表明文本的字间距:属性名称: 'letter-spacing'
属性值: normal |
初始值: normal
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
例如:
BLOCKQUOTE { letter-spacing: 0.1em }
word-spacing属性表明文本中单词间距:
属性名称: 'word-spacing'
属性值: normal |
初始值: normal
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
例如:
H1 { word-spacing: 1em }
text-transform属性可以将BOX内的文本按指定的大写或小写形式显示:
属性名称: 'text-transform'
属性值: capitalize | uppercase | lowercase | none
初始值: none
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
属性值含义为:
capitalize:把BOX中的每句句首字母变成大写。
uppercase:把BOX中所有的字母变成大写。
lowercase:把BOX中所有的字母变成小写。
White-space属性描述如何显示文本中的空格,在HTML中,空格是被省略的,也就是说你在一个段落标记的开头无论输入多少个空格都是无效的,要输入空格有两个方法,一是直接输入空格的代码“ ”,或者使用& lt;pre>标记,CSS中也制定了类似于pre的属性:
属性名称: 'white-space'
属性值: normal | pre | nowrap
初始值: normal
适合对象: 容器元素
是否继承: yes
百分比备注: 被禁止
例如:
PRE { white-space: pre }
P { white-space: normal }
CSS2快速参考之五
关键词:其他
7、列表属性:
这里的属性用来描述列表(list)的一系列属性。
list-style-type属性描述用于列表每一项前使用的符号:
属性名称: 'list-style-type'
属性值: disc | circle | square | decimal | lower-roman | upper-roman | lower-alpha | upper-alpha | none
初始值: disc
适合对象: 列表元素
是否继承: yes
百分比备注: 被禁止
属性值含义为:
disc:圆饼形。
circle:空心圆形。
square:方形。
decimal:十进制数值。
lower-roman:小写罗马数字。
upper-roman:大写罗马数字。
lower-alpha:小写希腊字母。
upper-alpha:大写希腊字母。
例如:
还可以利用list-style-image把列表前面的符号换为图形:
属性名称: 'list-style-image'
属性值:
初始值: none
适合对象: 列表元素
是否继承: yes
百分比备注: 被禁止
list-style-position属性用于描述列表的位置显示:
属性名称: 'list-style-position'
属性值: inside | outside
初始值: outside
适合对象: 列表元素
是否继承: yes
百分比备注: 被禁止
属性值outside和inside分别表示在BOX外部显示或内部显示,例如:
list-style属性为以上属性的快捷方式:
属性名称: 'list-style'
属性值: | | | |
初始值: no
适合对象: 列表元素
是否继承: yes
百分比备注: 被禁止
例如:
UL { list-style: upper-roman inside } /* 对任何UL有效*/
UL ~ UL { list-style: circle outside } /* 对任何UL内部的UL标记有效*/
8、表格属性:
由于表格中的大部分属性已经在以上的各类属性中探讨过了,所以这里只有两个属性介绍:
row-span属性描述表格跨越的行的数目:
属性名称: 'row-span'
属性值:
初始值: 1
适合对象: 表格元素
是否继承: no
百分比备注: 被禁止
column-span属性描述表格跨越的列的数目:
属性名称: 'column-span'
属性值:
初始值: 1
适合对象: 表格元素
是否继承: no
百分比备注: 被禁止
9、用户界面属性:
cursor属性,用户可以指定在某个元素上要使用的光标形状:
属性名称: 'cursor'
属性值: auto | crosshair | default | pointer | move | e-resize | ne-resize | nw-resize | n-resize | se-resize | sw-resize | s-resize | w-resize| text | wait | help |
初始值: auto
适合对象: 所有元素
是否继承: yes
百分比备注: 被禁止
属性值分别代表鼠标指针在windows操作里的各种形状,另外还可以指定指针图标的url地址,不过CSS还暂时不支持ani动画光标。
到此,所有关于CSS现有的属性都介绍完了(还有一些关于听觉方面的样式单,就不再作介绍),本文也该结束了,虽然现在支持样式单的浏览器种类还不多,但也占到了大半,样式单迟早会成为浏览器的统一标准,原因有两个:一、样式单是W 3C唯一接受的样式标准,而且没有任何迹象表明W3C会把javascript样式单作为样式单标准;二则是CSS有效的解决了把事件引入元素的问题,配合脚本程序,是动态HTML不可缺少的一部分,尝试着用样式单建立W eb页,你会发现它真的很方便。希望我的这些努力能为你熟练掌握样式单尽一点力。
推荐阅读
-
Zen Coding 快速编写HTML/CSS代码的实现
-
Zen Coding css,html缩写替换大观 快速写出html,css
-
【实战】如何通过html+css+mysql+php来快速的制作动态网页(以制作一个博客网站为列)
-
HTML/CSS快速入门
-
html快速参考
-
IE9中CSS2 height属性失效问题_html/css_WEB-ITnose
-
如何制作响应式网站?12个优秀案例参考_html/css_WEB-ITnose
-
IE9中CSS2 height属性失效问题_html/css_WEB-ITnose
-
记录几个设计参考模板_html/css_WEB-ITnose
-
一个已经完成的PC网站,如何快速改造,让它能适应平板、手机等不同分辨率?_html/css_WEB-ITnose