1.继承性
特点:
1.外层元素身上的样式会被内层元素所继承。
2.当内层元素身上的样式与外层元素身上的样式相同时,内层元素会覆盖外层元素。
疑问:是不是所有的样式都会被继承么?
答:并不是所有的样式都会继承,只有 文本与字体样式属性能够被继承。其它的样式属性都不可以被继承。
注意:
在实际工作中,我们往往会给body标签设置字体大小以及字体颜色。因为body标签是最外层的元素,内层的元素会继承外层的元素的样式的。
2.优先级
行内样式 > ID选择器;
ID 选择器 > 类选择器;
类选择器 > 标签选择器;
综上而言,选择器指向的越准确,优先级就会越高。 通常我们会用1来表示标签选择器的优先级,用10来表示类选择器的优先级,用100来表示ID选择器的优先级,用1000来表示行内样式。
3.!important属性
主要作用用来提升属性的权重,给important属性加上"!",其权重值无穷大。
格式:
属性:值 !important;
注意:
- !important它是提升的属性的权重,而不是提升选择器的权重.
- !important它不能提升继承过来的权重!
4.一个标签内可以携带多个类名
类名:指的是class的属性值.
一个标签内可以携带多个类名,指的是class的属性值可以有多个,每一个属性值之间使用空格分隔.
例如:
<标签名 class = "value1 value2 value3"></标签名>
多个类名的优点:
- 减少CSS的代码量.
- 多个类名的样式会叠加到当前元素上面.
注意:如果说一个标签内的多个类名,它们设置的样式是一样的话,就会存在样式的冲突!样式冲突时,在style中比较靠后的类,就会被执行显示出来,意思就是以CSS中的代码作为标准,谁写在后面就以谁作为标准和HTML中的class的属性值排序没有关系。
5.背景样式属性
注意:
- background-color:用于给元素设置背景颜色,但是前提这个元素,要么有内容,要么有宽度高度才可以显示出来,也就是说没有内容和定义div默认是没有的宽高。
- background-image:和上一个一样,这个元素,要么有内容,要么有宽度高度才可以显示出来,此外,背景图片默认是平铺的。
- background-repeat:这个就是决定背景图像是否平铺,repeat(平铺),repeat-x(水平平铺),repeat-y(垂直平铺),no-repeat(不平铺)。
- background-position:这个决定背景图像的起始位置通常用坐标x,y来表示,这两个位置的表示方式有三种:英文单词,固定值,百分比。
- 英文单词的表示方式:
水平位置:left(居左)、center(居中)、right(居右)。 垂直位置:top(居上)、center(居中)、bottom(居右)。 - 固定值的表示方式:例如:background-position:100px 100px ; 意思是水平100px,垂直100px。
- 百分比的表示方式:例如:background-position:50% 50%;意思就是水平方向百分之50的位置,垂直方向百分之50的位置。
- 注意:以上三种表示方式可以混合使用。
- 英文单词的表示方式:
- background-attachment:就是固定(fixed)或滚动(scroll)背景图片。
- background:以上的所有属性都可以使用执行。
6.标准文档流
就是要标准!!以下是两个注意事项和解决办法:
1.空白折叠现象
有的时候发现,文本或者图像之间会有空白,这是因为元素并不是在一行。
例如:
文本之间无空白:
<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
文本
</body>
</html>
文本之间有空白:
<!DOCTYPE html>
<html>
<head>
<title>test</title>
</head>
<body>
文
本
</body>
</html>
执行一下就可以知道为什么会有空白了。
2.高矮不齐,底部对其
意思就是有的图片或者文字大小不一样,就会采用底部对其的方式来显示。
7.浮动
浮动可以让元素脱离标准文档流,就可以实现让多个元素排在同一行,并且可以设置宽高。
float: 这个属性有两个值:left(向左浮动),right(向右浮动)。
- 浮动元素它脱离标准文档流,它不再占用空间了。
- 浮动元素它遇到了父元素的边框然后就停止了浮动
- 浮动元素它的层级要比标准文档流里面的元素层级要高,他会将标准文档流的元素给覆盖掉。
- 浮动元素在遇到上一个浮动元素时,就会停止了浮动,而不是覆盖掉上一个浮动元素。
- 浮动元素浮动以后,其父元素不会再包裹着浮动元素。
- 我们将行内元素进行浮动以后,那么这个行内元素它会变成块级元素。
注意:float元素的宽高,不受父元素的限制!!!!
浮动元素很常见,咱们平时浏览的一些小界面,都是对无序列表使用浮动,来实现的。
例如: