CSS 相关知识点
1. 样式的优先级
行内样式 > 内部样式 、 外部样式
其中针对内部样式和外部样式采用的是就近原则,谁距离标签比较近,就使用睡得样式表。
2.选择器
2.1 基本选择器
为了获取页面的的元素
(1)标签选择器
(2)类选择器
(3)id选择器
1 | <h1 class="myh1" id='name'>1111</h1> |
选择器的优先级顺序:
id选择器 > class 选择器 > 标签选择器
2.2 层次选择器
1 |
|
1、后代选择器
所有的后代
1 | <style> |
2、子选择器
只有最近的子代
1 | <style> |
3、相邻兄弟选择器
只有一个,相邻向下
1 |
|
4.通用选择器
当前选中元素的向下的所有兄弟元素
1 | <style> |
2.3 结构伪类选择器
我觉得意义不大
2.4 属性选择器
属性选择器可以根据元素的属性或者属性值来选择元素
1 |
|
3.样式
3.1 字体样式
1 | font-family: 字体 |
3.2 文本样式
颜色
文本对齐方式
1
text-align: center;
首行缩进
1
2/* em代表缩进一个字 */
text-indent: 2em;行高
行高和块的高度一致时,就可以保证文本上下居中。
1
line-height: 300px;
下划线
1
text-decoration: underline;
文本图片水平对齐
1
2
3
4
5
6
7
8
9
10
11<body>
<img src="../../public/favicon.ico" class="favicon">
<span class="spantext">111111111111111111111</span>
</body>
<style>
/* 逗号左边的参数是参照物 */
.favivon,spantext{
vertical-align: middle;
}
</style>
3.3 文本阴影和超链接伪类
3.3.1 超链接的相关伪类
1 | <style> |
3.3.2 文本阴影
3.4 列表
3.4.1 相关样式
1 | /* |
3.5 背景
3.5.1 背景颜色
3.5.2 背景图片
4.盒子模型
margin: 外边框
padding: 内边框
border: 边框
4.2 边框
边框的粗细
边框的样式
边框的颜色
1
border: 2px solid red;
4.3 外边框
外边框水平居中
注意:如果margin: 0 auto; 未生效
在body中将text-align属性设置未center就行。
1 | /* 水平居中 首先外面是一个块元素,块元素外面有长度限制*/ |
4.4 圆角边框
1 | /* 左上 右上 右下 左下 */ |
4.5 阴影
1 | box-shadow: ; |
5. 浮动
5.1 行内元素
行内元素:
- 与其他行内元素并排
- 不能设置宽高,默认的宽度就是文字的宽度
5.2 块级元素
块级元素:
- 霸占一行,不能与其他任何元素并列。
- 能接受宽高,如果不设置宽度,那么宽度将默认变为父级的100%。
5.2.1块级元素和行内元素的分类:
在HTML的角度来讲,标签分为:
文本级标签:p , span , a , b , i , u , em
容器级标签:div , h系列 , li , dt ,dd
p:里面只能放文字和图片和表单元素,p里面不能放h和ul,也不能放p。
从CSS的角度讲,CSS的分类和上面的很像,就p不一样:
行内元素:除了p之外,所有的文本级标签,都是行内元素。p是个文本级标签,但是是个块级元素。
块级元素:所有的容器级标签,都是块级元素,以及p标签。
5.2.2块级元素和行内元素的相互转换:
我们可以通过display属性将块级元素(比如div)和行内元素进行相互转换。
display:inline;
那么这个标签将变为行内元素,即:
1,此时这个div将不能设置宽度和高度了。
2,此时这个div可以和其他行内元素并排了。
同样的到了我们也可以用display将行内元素(比如span)转行成块级元素。
display:block;
那么这个span标签将变为块级标签,即:
1,此时这个span能够设置宽度,高度。
2,此时这个span必须独占一行,其他元素无法与之并排。
3,如果不设置宽度,将占满父级。