# CSS 简介
# CSS 是什么
CSS 是层叠样式表(Cascading Style Sheets),用于设置和布置网页,可以对元素位置进行排版,可以为元素添加背景和边框,可以为元素添加动效动画等等。
# CSS 的历史
CSS1:1996 年 12 月正式推出 CSS1,对字体、尺寸、颜色、文本、位置、背景、边框等进行了规范,这个阶段主要使用 table 和 CSS1 来定位表单的外观和样式。
CSS2:1998 年 5 月正式推出 CSS2,扩展了 CSS1,添加了很多新属性和伪元素,这个阶段主要使用 div 和 li 来分割元素再搭配 CSS2 来定义表单界面的外观。
CSS2.1:2004 年 2 月正式推出了 CSS2.1,纠正了 CSS2 中的一些错误,也删除了一些不被浏览器所支持的属性(有些出现在 CSS3 规范中了)。
CSS3:2010 年推出的全新版本 CSS3,被分为若干个相互独立的模块,包括盒子模型、列表模块、超链接方式、语言模块、背景和边框、文字特效、多栏布局等模块。
# CSS3 有哪些模块
CSS3 没有采用总体结构,而是采用了分工协作的模块化结构。原因是为了避免浏览器因为不支持一部分功能而不支持整个部分了,先让浏览器支持的模块尽可能多,一些不必要的可以不支持,对于 PC 端和移动端就是如此。
模块名称 | 功能描述 |
---|---|
basic box model | 定义各种与盒模型相关的样式 |
Line | 定义各种与直线相关的样式 |
List | 定义各种与列表相关的样式 |
Hyperlink Presentation | 定义各种与超链接相关的样式。譬如锚的显示方式、激活时的视觉效果等 |
Presentation Levels | 定义页面中元素的不同的样式级别 |
Speech | 定义各种与语音相关的样式。譬如音量、音速、说话间歇时间属性 |
Background and border | 定义各种与背景和边框相关的样式 |
Text | 定义各种与文字相关的样式 |
Color | 定义各种与颜色相关的样式 |
Font | 定义各种与字体相关的样式 |
Paged Media | 定义各种页眉、页脚、页数等页面元数据的样式 |
Cascading and inheritance | 定义怎样对属性进行赋值 |
Value and Units | 将页面上各种各样的值与单位进行统一,以供其他模块使用 |
Image Values | 定义对 image 元素的赋值方式 |
2D Transforms | 在页面中实现 2 维空间上的变形效果 |
3D Transforms | 在页面上实现 3 维空间上的变形效果 |
Transitions | 在页面中实现平滑过渡的视觉效果 |
Animations | 在页面中实现动画 |
CSSOM View | 查看管理页面或页面的视觉效果,处理元素的位置信息 |
Synatax | 定义 CSS 样式表的基本结构、样式表中的一些语法细节、浏览器对于样式的分析规则 |
Generated and Replaced Content | 定义怎样在元素中插入内容 |
Marquee | 定义当一些元素的内容太大,超过了指定的元素尺寸时,是否以及怎样显示溢出部分 |
Ruby | 定义页面中 ruby 元素(用于显示拼音文字)的样式 |
Writing Modes | 定义页面中文本数据的布局方式 |
Basic User Interface | 定义屏幕、纸张上进行输出时页面的渲染方式 |
Namespaces | 定义使用命名空间时的语法 |
Media Queries | 根据媒体类型来实现不同的样式 |
‘Reader’Media Type | 定义用于屏幕阅读器之类的阅读程序时的样式 |
Multi-column Layout | 在页面中使用多栏布局方式 |
Template Layout | 在页面中使用特殊布局方式 |
Flexible Box Layout | 创建自适应浏览器窗口的流动布局或自适应字体大小的弹性布局 |
Grid Position | 在页面中使用网络布局方式 |
Generated Content for Paged Media | 在页面中使用印刷时使用的布局方式 |
# CSS 长什么样子
css 是由一个选择器(selector)起头,后面接一对大括号{ }
,然后在大括号里面定义一些属性和对应的属性值。
h1 {
color: red;
font-size: 5em;
}
p {
color: black;
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8