9、选择器权重
样式冲突,为相同元素提供不同样式,此时为样式冲突
权重比较
内联样式>id选择器>类和伪类选择器>元素选择器>通配选择器>继承的样式
注:!important声明为最高级优先级,复合选择器相相加计算,分组选择器单独计算,同级是覆盖,类选择器无论怎么叠加也不能超过id选择器,无法跨数量
内联样式,如: style="…",权值为1000。
ID选择器,如:#content,权值为0100。
类,伪类、属性选择器,如.content,权值为0010。
类型选择器、伪元素选择器,如div p,权值为0001。
通配符、子选择器、相邻选择器等。如* > +,权值为0000。
继承的样式没有权值
10、像素和百分比
像素
:px
百分比
:50% 相对于父元素
em
:1em相对于1个字体大小,相对于自身元素
rem
:1rem=1个字体大小(默认html的font-size=16px)相对于根元素
11、文档流
文档流也就是网页的基础,最底层的东西,元素状态也就是两种。
- 在文档流:
- 块元素:独占一行,默认宽和高会撑开父元素的全部
- 行内元素:不会独占一行,超出自动换行,同样默认撑开
- 不在文档流:
脱离文档流的方式有很多以,通过设置position、float都可以脱离文档流
12、盒模型
块元素盒模型
所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用。
CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容。
盒模型允许我们在其它元素和周围元素边框之间的空间放置元素。
- Margin(外边距) - 清除边框外的区域,外边距是透明的。
- Border(边框) - 围绕在内边距和内容外的边框。
- Padding(内边距) - 清除内容周围的区域,内边距是透明的。
- Content(内容) - 盒子的内容,显示文本和图像。
<div>这里是盒子内的实际内容。有 25px 内间距,25px 外间距、25px 绿色边框。</div>
div {
background-color: lightgrey;
width: 300px;
border: 25px solid green;
padding: 25px;
margin: 25px;
}
行内元素盒模型
- 不支持设置宽度和高度
- 可以设置padding,但是垂直方向的padding不会影响页面布局
- 可以设置border,垂直方向的border不会影响页面布局
- 可以设置margin,垂直方向的marigin不会影响页面布局
总结:垂直方向不影响