CSS1, CSS2, CSS3属性归纳

1,965 阅读18分钟

关于CSS1, CSS2, CSS3

CSS1(Cascading Style Sheets, level 1), 最早的一代CSS。早期的HTML页面很简陋,多数用标签来表示元素的样式,这时的CSS主要用来进行HTML元素的表现,因此包含的主要内容是文字、颜色、背景、盒子模型。

CSS2(Cascading Style Sheets, level 2),由于第一代CSS与HTML混合,这时提出表现与内容分离,CSS只做表现,HTML只做内容,泾渭分明。这时的选择器比CSS1更丰富,独立性更强,也丰富了一些新的样式属性,增加了定位。

CSS3(Cascading Style Sheets, level 3),这一代的CSS则朝着模块化方向发展,且样式内容更丰富,效果更炫酷,像过度,动画,变换等,以及排版布局更方便的伸缩盒子等。

下面是分类列出的三代CSS的样式内容,以便查阅和理解。

CSS1

选择器 Selectors

选择符名称类型描述
T类型选择器(Type Selector)元素选择器以文档语言对象类型作为选择符(如p)
#myidid选择符(ID Selector)元素选择器以唯一标识符id属性等于myid的E对象作为选择符
.myclassclass选择符(Class Selector)元素选择器以class属性包含myclass的E对象作为选择符
E F包含选择符(Descendant combinator)关系选择器选择所有被E元素包含的F元素
E:link伪类选择器设置超链接a在未被访问前的样式
E:visited伪类选择器设置超链接a在其链接地址已被访问过时的样式
E:hover伪类选择器设置元素在其鼠标悬停时的样式
E:active伪类选择器设置元素在被用户激活(在鼠标点击与释放之间发生的事件)时的样式
E:focus伪类选择器设置元素在成为输入焦点(该元素的onfocus事件发生)时的样式
E:first-letter伪元素选择器设置对象内的第一个字符的样式
E:first-line伪元素选择器设置对象内的第一行的样式

属性 Properties

布局 Layout

属性继承性描述
float定义了元素向左或者向右浮动放置
clear定义了一个元素是否可以放置在它之前的浮动元素旁边,或者必须向下移动在新行中放置

尺寸与补白(Dimension)

属性继承性描述
width定义了元素内容区(Content Area)的宽度
height定义了元素内容区(Content Area)的高度
margin为元素设置所有四个方向(上右下左)的外边距
margin-*为元素设置某方向的外边距,*可以为top, right, bottom, left
padding为元素设置所有四个方向(上右下左)的内边距,即内容和元素边界之间的空间
padding-*为元素设置某方向的内边距,*可以为top, right, bottom, left

背景(Background)

属性继承性描述
background简写属性。定义元素的背景特性
background-color定义元素使用的背景颜色
background-image定义元素使用的背景图像
background-repeat定义元素的背景图像如何填充
background-attachment定义滚动时背景图像相对于谁固定
background-position指定背景图像在元素中出现的位置

边框(Border)

属性继承性描述
border简写属性。定义元素边框的外观特性
border-width简写属性。定义元素的边框厚度,按上、右、下、左的顺序作用于四边
border-*-width分拆属性。定义元素某边框厚度,*可以为 top, right, bottom, left
border-style简写属性。定义元素的边框样式,按上、右、下、左的顺序作用于四边
border-*-style分拆属性。定义元素某边框样式,*可以为 top, right, bottom, left
border-color简写属性。定义元素的边框颜色,按上、右、下、左的顺序作用于四边
border-*-color分拆属性。定义元素某边框颜色,*可以为 top, right, bottom, left

颜色(Color)

属性继承性描述
color指定颜色

字体(Font)

属性继承性描述
font简写属性。定义元素的文本特性
font-family定义元素文本的字体名称序列
font-size定义元素的字体大小
font-weight定义元素文本字体的粗细
font-style指定元素的文本是否为斜体
font-variant定义元素的文本是否为小型的大写字母

文本(Text)

属性继承性描述
text-transform定义元素的文本如何转换大小写
text-indent定义块内文本内容的缩进
text-align定义元素内容的水平对齐方式
vertical-align定义行内元素在行框内的垂直对齐方式
line-height定义元素中行框的最小高度
word-spacing指定单词之间的额外间隙
letter-spacing指定字符之间的额外间隙
white-space指定元素是否保留文本间的空格、换行;指定文本超过边界时是否换行

文本装饰(Text Decoration)

属性继承性描述
text-decoration文本装饰样式,如下划线,删除线

列表(List)

属性继承性描述
list-style复合属性。设置列表项目相关内容
list-style-image设置或检索作为对象的列表项标记的图像
list-style-position设置或检索作为对象的列表项标记如何根据文本排列
list-style-type设置或检索对象的列表项所使用的预设标记

Only IE

属性继承性描述
scrollbar-3dlight-color检索或设置对象滚动条3d亮色阴影边框(threedlightshadow)的外观颜色
scrollbar-darkshadow-color检索或设置对象滚动条3d暗色阴影边框(threeddarkshadow)的外观颜色
scrollbar-highlight-color检索或设置对象滚动条3d高亮边框(threedhighlight)的外观颜色
scrollbar-shadow-color检索或设置对象滚动条3d阴影边框(threedshadow)的外观颜色
scrollbar-arrow-color检索或设置对象滚动条方向箭头的颜色。当滚动条出现但不可用时,此属性失效
scrollbar-face-color检索或设置对象滚动条3D表面的(threedface)的外观颜色
scrollbar-track-color检索或设置对象滚动条拖动区域的外观颜色
scrollbar-base-color检索或设置对象滚动条基准颜色,其它界面颜色将据此自动调整
filter设置或检索对象所应用的滤镜效果
behavior设置或检索对象的DHTML行为

CSS2

这里只列出CSS2中新增的内容,包括选择器、属性(新增的属性值未列出)。

选择器(Selectors)

选择符名称类型描述
*通配选择符(Universal Selector)元素选择器所有元素对象
E>F子选择符(Child combinator)关系选择器选择所有作为E元素的直接子元素F
E+F相邻选择符(Adjacent sibling combinator)关系选择器选择紧贴在E元素之后F元素
E[attr]属性选择器选择具有att属性的E元素
E[attr="val"]属性选择器选择具有att属性的E元素
E[attr~="val"]属性选择器选择具有att属性且属性值为一用空格分隔的字词列表,其中一个等于val的E元素
E[attr|="val]属性选择器选择具有att属性且属性值为以val开头并用连接符"-"分隔的字符串的E元素,如果属性值仅为val,也将被选择
E:lang(fr)伪类选择器匹配使用特殊语言的E元素
E:first-child伪类选择器匹配父元素的第一个子元素E
E:before伪元素选择器设置在对象前(依据对象树的逻辑结构)发生的内容。用来和content属性一起使用
E:after伪元素选择器设置在对象后(依据对象树的逻辑结构)发生的内容。用来和content属性一起使用

属性(Properties)

定位(Positioning)

属性继承性描述
position用于指定一个元素在文档中的定位方式
top定义了元素的上外边距边界与其包含块上边界之间的偏移
right定义了元素的右外边距边界与其包含块右边界之间的偏移
bottom定义了元素的底外边距边界与其包含块底边界之间的偏移
left定义了元素的左外边距边界与其包含块左边界之间的偏移
clip定义了元素的哪一部分是可见的。区域外的部分是透明的
z-index定义一个元素在文档中的层叠顺序

布局(Layout)

属性继承性描述
display定义了元素是否显示,及生成哪种盒用于显示
visibility定义了元素是否可见。与display属性不同,此属性为隐藏的对象保留其占据的物理空间
overflow简写属性。定义了元素处理溢出内容的方式
overflow-*分拆属性。定义了元素处理溢出内容的方式。*可为x, y

尺寸与补白(Dimension)

属性继承性描述
min-width定义了元素内容区(Content Area)的最小宽度
max-width定义了元素内容区(Content Area)的最大宽度
min-height定义了元素内容区(Content Area)的最小高度
max-height定义了元素内容区(Content Area)的最大高度

书写模式(Writing Modes)

属性继承性描述
direction检索或设置文本流的方向
unicode-bidi用于同一个页面里存在从不同方向读进的文本显示。与 <' direction '> 属性一起使用

表格(Table)

属性继承性描述
table-layout设置或检索表格的布局算法
border-collapse设置或检索表格的行和单元格的边是合并在一起还是按照标准的HTML样式分开
border-spacing设置或检索当表格边框独立时,行和单元格的边框在横向和纵向上的间距
caption-side设置或检索表格的caption对象是在表格的那一边
epmty-cells设置或检索当表格的单元格无内容时,是否显示该单元格的边框

内容(Content)

属性继承性描述
content用来和:after及:before伪元素一起使用,在对象前或后显示内容
counter-increment设定当一个selector发生时计数器增加的值
counter-reset将指定selector的计数器复位
quotes设置或检索对象内使用的嵌套标记

用户界面(User Interface)

属性继承性描述
outline复合属性。设置或检索对象外的线条轮廓
outline-width设置或检索对象外的线条轮廓的宽度
outline-style设置或检索对象外的线条轮廓的样式
outline-color设置或检索对象外的线条轮廓的颜色
cursor设置或检索在对象上移动的鼠标指针采用何种系统预定义的光标形状

打印(Printing)

属性继承性描述
page-break-before检索或设置对象之前出现的页分割符
page-break-after检索或设置对象之后出现的页分割符
page-break-inside检索或设置对象容器内部出现的页分割符

CSS3

这里只列出CSS3中新增的内容,包括选择器、属性(新增的属性值未列出)。

选择器(Selectors)

选择符名称类型描述
*通配选择符(Universal Selector)元素选择器所有元素对象
E~F相邻选择符(Adjacent sibling combinator)关系选择器选择E元素所有兄弟元素F
E[att^="val"]属性选择器选择具有att属性且属性值为以val开头的字符串的E元素
E[att$="val"]属性选择器选择具有att属性且属性值为以val结尾的字符串的E元素
E[att*="val"]属性选择器选择具有att属性且属性值为包含val的字符串的E元素
E:not(s)伪类选择器匹配不含有s选择符的元素E
E:root伪类选择器匹配E元素在文档的根元素
E:last-child伪类选择器匹配父元素的最后一个子元素E。
E:only-child伪类选择器匹配父元素仅有的一个子元素E。
E:nth-child(n)伪类选择器匹配父元素的第n个子元素E。
E:nth-last-child(n)伪类选择器匹配父元素的倒数第n个子元素E。
E:first-of-type伪类选择器匹配父元素下第一个类型为E的子元素。
E:last-of-type伪类选择器匹配父元素下的所有E子元素中的倒数第一个。
E:only-of-type伪类选择器匹配父元素的所有子元素中唯一的那个子元素E。
E:nth-of-type(n)伪类选择器匹配父元素的第n个子元素E。
E:nth-last-of-type(n)伪类选择器匹配父元素的倒数第n个子元素E。
E:empty伪类选择器匹配没有任何子元素(包括text节点)的元素E。
E:checked伪类选择器匹配用户界面上处于选中状态的元素E。(用于input type为radio与checkbox时)
E:enabled伪类选择器匹配用户界面上处于可用状态的元素E。
E:disabled伪类选择器匹配用户界面上处于禁用状态的元素E。
E:target伪类选择器匹配相关URL指向的E元素。
E::placeholder伪元素选择器设置对象文字占位符的样式。
E::selection伪元素选择器设置对象被选择时的颜色。

属性(Properties)

边框(Border)

属性继承性描述
box-shadow定义元素的阴影
border-radius简写属性。定义元素的圆角
border-image简写属性。定义将图像应用到元素的边框上
border-image-source定义元素边框样式所使用的图像。
border-image-slice用以指定从哪 4 个位置分割图像(遵循上右下左的顺序)
border-image-width定义元素边框图像的厚度
border-image-outset定义边框图像从边框边界向外偏移的距离
border-image-repeat定义分割图像怎样填充边框图像区域

颜色(Color)

属性继承性描述
opacity定义元素的不透明度

字体(Font)

属性继承性描述
font-stretch定义元素的文字是否横向拉伸变形
font-size-adjust定义小写字母x的高度与对象文字字号的比率。

文本(Text)

属性继承性描述
tab-size定义元素内容中制表符的长度
word-break定义元素内容文本的字间与字符间的换行行为
word-wrap/overflow-wrap定义元素内容文本遇到边界时如何换行
text-align-last定义块内文本内容的最后一行(包括块内仅有一行文本的情况,这时既是第一行也是最后一行)或者被强制打断的行的对齐方式
text-justify定义使用什么方式实现文本内容两端对齐
text-size-adjust定义移动端页面中元素文本的大小如何调整

文本装饰(Text Decoration)

属性继承性描述
text-decoration-line定义元素文本装饰线条位于文本的哪个位置
text-decoration-color指定元素文本装饰线条的颜色
text-decoration-style定义元素文本装饰线条的形状
text-decoration-skip定义元素文本装饰线条必须跳过内容中的哪些部分
text-underline-position定义元素装饰线的位置
text-shadow定义文字是否有阴影及模糊效果

书写模式(Writing Modes)

属性继承性描述
writing-mode设置或检索对象的内容块固有的书写方向

用户界面(User Interface)

属性继承性描述
appearance设置或检索外观按照本地默认样式
text-overflow当块容器overflow为非visible时,定义内联内容溢出其块容器是否截断或者添加(...)及自定义字符
outline-offset设置或检索对象外的线条轮廓偏移位置的数值
nav-index设置或检索对象的导航顺序。
nav-up设置或检索对象的导航方向。
nav-right设置或检索对象的导航方向。
nav-down设置或检索对象的导航方向。
nav-left设置或检索对象的导航方向。
zoom设置或检索对象的缩放比例。
box-sizing设置或检索对象的盒模型组成模式。
resize设置或检索对象的区域是否允许用户缩放,调节元素尺寸大小。

多列(Multi-column)

属性继承性描述
columns设置或检索对象的列数和每列的宽度。复合属性
column-width设置或检索对象每列的宽度
column-count设置或检索对象的列数
column-gap设置或检索对象的列与列之间的间隙
column-rule设置或检索对象的列与列之间的边框。复合属性
column-rule-width设置或检索对象的列与列之间的边框厚度。
column-rule-style设置或检索对象的列与列之间的边框样式。
column-rule-color设置或检索对象的列与列之间的边框颜色。
column-span设置或检索对象元素是否横跨所有列。
column-fill设置或检索对象所有列的高度是否统一。
column-break-before设置或检索对象之前是否断行。
column-break-after设置或检索对象之后是否断行。
column-break-inside设置或检索对象内部是否断行。

伸缩盒子(Flexible Box)

属性继承性描述
flex复合属性。设置或检索伸缩盒对象的子元素如何分配空间。
flex-grow设置或检索弹性盒的扩展比率。
flex-shrink设置或检索弹性盒的收缩比率
flex-basis设置或检索弹性盒伸缩基准值。
flex-flow复合属性。设置或检索伸缩盒对象的子元素排列方式。
flex-direction设置或检索伸缩盒对象的子元素在父容器中的位置。
flex-wrap设置或检索伸缩盒对象的子元素超出父容器时是否换行。
align-content设置或检索弹性盒堆叠伸缩行的对齐方式。
align-items设置或检索弹性盒子元素在侧轴(纵轴)方向上的对齐方式。
align-self设置或检索弹性盒子元素自身在侧轴(纵轴)方向上的对齐方式。
justify-content设置或检索弹性盒子元素在主轴(横轴)方向上的对齐方式。
order设置或检索伸缩盒对象的子元素出現的順序。

变换(Transform)

属性继承性描述
transform检索或设置对象的变换
transform-origin检索或设置对象中的变换所参照的原点
transform-style指定某元素的子元素是否位于三维空间内
perspective指定观察者与「z=0」平面的距离
perspective-origin指定透视点的位置
backface-visibility指定元素背面面向用户时是否可见

过度(Transition)

属性继承性描述
transition复合属性。检索或设置对象变换时的过渡效果
transition-property检索或设置对象中的参与过渡的属性
transition-duration检索或设置对象过渡的持续时间
transition-timing-function检索或设置对象中过渡的类型
transition-delay检索或设置对象延迟过渡的时间

动画(Animation)

属性继承性描述
animation复合属性。检索或设置对象所应用的动画特效
animation-name检索或设置对象所应用的动画名称
animation-duration检索或设置对象动画的持续时间
animation-timing-function检索或设置对象动画的过渡类型
animation-delay检索或设置对象动画延迟的时间
animation-iteration-count检索或设置对象动画的循环次数
animation-direction检索或设置对象动画在循环中是否反向运动
animation-play-state检索或设置对象动画的状态
animation-fill-mode检索或设置对象动画时间之外的状态

打印(Printing)

属性继承性描述
page检索或指定显示对象容器时使用的页面类型

来源:css.doyoe.com/