CSS
- 1、 基础篇
- 1.1、选择器
- 1.2、长度单位
- 1.3、CSS2 常用属性
- 1.4、盒模型
- 1.5、浮动
- 1.6、定位 position
- 2、 CSS3
- 2.1、新增长度单位
- 2.2、新增颜色表示
- 2.3、新增选择器
- 2.4、新增盒子属性
- 2.5、新增背景属性
- 2.6、新增边框属性
- 2.7、新增文本属性
- 2.8、线性渐变 background-image
- 2.9、字体声明
- 2.10、2D 变换 transform
- 2.11、3D 变换
- 2.12、过渡
- 2.13、动画
- 2.14、多列布局
- 2.15、伸缩盒模型
- 2.16、媒体查询与响应式布局
- 2.16、BFC
- 3、 总结
- 3.1、居中
- 3.2、浮动、定位、位移、弹性盒子比较
- 3.3、文本溢出处理
- 3.4、渐变画图(信纸)
- 3.5、留白处理
1、 基础篇
1.1、选择器
基础选择器 | 类型 | 描述 |
---|
* | 通配选择器 | 选择所有标签 |
.class | 类选择器 | |
#id | ID 选择器 | |
tag | 元素选择器 | 选择所有 tag 标签 tag1,tag2:选择所有 tag1、tag2 标签 |
子代选择器 | 描述 |
---|
tag1 tag2 | 选择所有 tag1 标签内部的所有 tag2 标签(直系关系) |
tag1>tag2 | 选择所有 tag1 标签的所有 tag2 直接子标签(父子关系) |
兄弟选择器 | 描述 |
---|
tag1+tag2 | 选择所有 tag1 标签之后紧接的一个 tag2 标签(兄弟关系) |
tag1~tag2 | 选择位于所有 tag1 标签之后的所有 tag2 兄弟标签(兄弟关系) |
属性选择器 | 描述 |
---|
[attr] | 选择带有 attr 属性的所有标签 |
tag[attr] | 选择带有 attr 属性的所有 tag 标签 |
tag[attr=value] | 选择 attr 属性为 value 的所有 tag 标签 |
tag[attr^=value] | 选择 attr 属性以 value 开头的所有 tag 标签 |
tag[attr$=value] | 选择 attr 属性以 value 结尾的所有 tag 标签 |
tag[attr*=value] | 选择 attr 属性包含 value 子串的所有 tag 标签 |
tag[attr~=value] | 选择 attr 属性包含 value 单词的所有 tag 标签 |
tag[attr|=value] | 选择 attr 属性为 value 的所有 tag 标签 或者 选择 attr 属性以 value- 开头的所有 tag 标签(注意value后有一个连接字符) |
1.2、长度单位
长度 | 描述 |
---|
mm | 毫米 |
cm | 厘米 |
px | 显示器的一个像素单位 |
em | 值*当前元素的 font-size(没有的话就一直往上级找 font-size,最后还是没有的话就采用默认的 font-size 大小) |
rem | 值*根元素的 font-size(没有设置的话就采用默认的 font-size 大小) |
百分比 | 父元素长宽的百分比 |
1.3、CSS2 常用属性
颜色 | 描述 | 示例 |
---|
颜色名 | | teal |
rgb | rgb(红,绿,蓝) | |
HEX / HEXA | #红绿蓝 / #红绿蓝透明度
| #FF998866(可以简写为 #F986) |
字体 | 描述 | 描述 |
---|
font-size | 字体大小 | 示例:font-size:12px |
font-family | 字体族 | 示例:font-family:“Segoe Script”,“微软雅黑” |
font-style | 字体风格 | 示例:font-style:italic (斜体) |
font-weight | 字体粗细 | 属性值:lighter / normal / bold / bolder / 数值 (不带单位) |
font | 复合属性 | 属性值的顺序:其他属性 大小 字体族(以空格分隔) |
TIP
1、font-weight 一般只有 lighter、normal、bold,一些字体会有 bolder;如果使用数值来表示粗细的话, lighter、normal、bold、bolder会对应一个范围的数值,例如小于等于 300 的粗细都跟 lighter 一样,而不是说 100 就会比 200 小
2、font 的属性值最后两位必须是大小、字体族,而其余的例如风格、粗细在前头是可以乱序的
3、<em>...</em>
自带斜体效果
4、font-size:xxx 其实是指一个长度为 xxx 的框框,而字体在设计的时候不一定是设计在这个框框的正中央,有可能偏上、偏下、甚至是超出,这个框框只是用于限定一个字符大概的范围。因此如果 font-size 和行高设置为一样的话,对于会超出框框的字体来说,可能会不同行的字体会出现重叠的情况

文本 | 描述 |
---|
color | 字体颜色 |
background-color | 背景颜色 |
letter-spacing | 字母/汉字间距(单位:px) |
word-spacing | 单词间距(前后为空的视为一个单词)(单位:px) |
text-decoration | 文本修饰,接收三个属性:类别、样式、颜色(可以乱序) 类别 —— overline :上划线,underline :下划线,line-through :删除线 样式 —— dotted :虚线,wavy :波浪线 |
text-indent | 缩进,单位是 px,设置为字体大小的两倍,就相当于首行缩进两个空格 |
text-align | 文本对齐
left :左对其,center :居中,right :右对其 |
line-height | 行高,line-height 一般要设置比 font-size 更大一些
normal :浏览器会自动调整,保证在最紧凑的情况下,不会出现不同行的字体发生重叠的情况 |
vertical-align | 非块级子元素的垂直方向对齐方式
top :顶部对其,bottom :底部对齐,baseline :基线对齐(默认) |
TIP
1、text-decoration:none
可用于去掉超链接的下划线
2、<ins>...</ins>
自带下划线、<del>...</del>
自带删除线
3、line-height 的值是一个不带单位的数时,相当于 数值 * font-size,例如 line-height:1 相当于 line-height 与 font-size 一样大,因此一般写数值的话可以控制在 1.5 ~ 2 之间
4、tr 标签中的 valign
属性用于控制其文本的垂直方向对齐方式,top
:顶部对齐,bottom
:底部对齐,middler
:居中对齐
列表 | 描述 |
---|
list-style-type | 列表符号的类型
none :不要符号,square :小方块,lower-roman :小写罗马数字,upper-roman :大写罗马数字,decimal :数字 |
list-style-position | 列表符号的位置
inside :列表符号跟文本是一体的,outside :列表符号跟文本不是一体的(给 li 标签加个背景颜色可以看出区别) |
list-style-image | 自定义列表符号 |
list-style | 符合属性,可以乱序 |
边框 | 描述 |
---|
border-width | 边框宽度 |
border-color | 边框颜色 |
border-style | 边框样式
solid :实现,dashed :虚线,dotted :点线,double :双实线 |
border | 符合属性,可以乱序 |
TIP:border-width、border-color、border-style 要同时设置样式效果才能出来
表格 | 描述 |
---|
table-layout | 控制列宽
auto :根据列的内容调整,不同列宽度可能不同,fixed :根据全局进行跳转,所有列的宽度相同 |
border-spacing | 控制单元格间距 |
empty-cells | 隐藏没有内容的单元格边框
show :显示,hide :隐藏 |
border-collapse | 合并相邻的单元格的边框(不是合并单元格)
separate :不合并,collapse :合并(这会让 table-spacing、empty-cells 失效) |
caption-side | 设置 thead 标签的位置
top :顶部(默认),bottom :底部 |
背景 | 描述 |
---|
background-color | 背景颜色,默认是transparent (透明) |
background-image | 背景图片(太小的话,默认是填充) |
background-repeat | 背景图片的适应模式
repeat :填充,repeat-x :水平填充,repeat-y :垂直填充,no-repeat :原模原样 |
background-position | 背景图片的位置
left top :左上角对齐,right bottom :右下角对齐,center center :居中对齐,10px 20px :距左10px、距顶20px |
background | 符合属性,可以乱序 |
鼠标 | 描述 |
---|
cursor | 鼠标样式
pointer :小手,move :移动,wait :等待,url(...),pointer :自定义 |
溢出 | 描述 |
---|
overflow | 溢出的处理方式
hidden :隐藏,visible :显示(默认),scroll :滚动条,auto :自动 |
overflow-x | 横向上的溢出处理方式 |
overflow-y | 纵向上的溢出处理方式 |
隐藏 | 描述 |
---|
display | 隐藏
none :不占位隐藏 |
visibility | 隐藏
show :显示(默认),hidden :占位隐藏 |
1.4、盒模型
display 声明盒模型 | 描述 |
---|
block | 块元素 |
inline-block | 行内块元素 |
inline | 行内元素 |
元素的显示模式 | 描述 | 注意点 |
---|
块元素/块级元素 | 宽度拉满独占一行,高度默认由内容撑开,可以自行设置 | |
行内元素/内联元素 | 不独占一行,宽高由内容决定,不能自行设置 | |
行内块元素 | 不独占一行,宽高默认由内容决定,可以自行设置 | 行内元素的左右 margin 可以设置,上下 margin 设置完了没有效果 |