1、继承性
特点:
- 外层元素身上的样式会被内层元素所继承;
- 当内层元素与外层元素身上的样式相同时,外层元素的样式会被内层元素的样式覆盖。
- 并不是所有的样式属性都能够被继承,只有文本与字体样式属性能够被继承,其他的样式属性都不能。
- 注意:在实际工作中,往往会给body标签设置字体大小以及字体颜色。因为body标签是最外层的元素,内层的元素会继承外层元素的样式。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>继承性</title>
<style type="text/css">
body{
color:#f00;
}
div{
color: #00f;
/*给div标签设置一个边框,div标签相对于h2和p标签来说,他是一个外层元素
现在给外层元素设置一个边框的样式,这个边框会不会被继承?
如果会,那么h2和p标签都会有一个边框,如果不会,则只有div有一个边框。
*/
border: 1px solid #ccc;
}
</style>
</head>
<body>
<!--div>h2+p : 表示div是父元素,h2与p都是其子元素,h2与p标签紧挨着,并且p标签在h2标签的下面-->
<div>
<h2>故事是从一个叫做张小凡的普通少年开始的</h2>
<p>故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的
故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的
故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的
</p>
</div>
</body>
</html>
2、优先级
类型 | 优先级值 |
---|---|
标签选择器 | 1 |
类选择器 | 10 |
ID选择器 | 100 |
行内样式 | 1000 |
优先级数值越大表示其优先级越高。一般而言,选择器的指向越准确,优先级就会越高。 不管是单个选择器还是多个选择器组合,它们之间的优先级都可以通过上面这个公式来进行计算。我们将其值称之为权重值,权重值越大就表示其优先级越高。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>优先级</title>
<style type="text/css">
/*标签选择器、类选择器、id选择器、行内样式 优先级由低到高*/
div{
color:#f00;
}
.d{
color: rgba(63, 238, 28, 0.667);
}
#dd{
color: #00f;
}
div h2{ /*1+1=2 */
color: #ccc;
}
.d h2{ /*10+1=11 */
color:#000;
}
#dd h2{ /*100+1=101 */
color: rgb(184, 48, 105);
}
</style>
</head>
<body>
<div class="d" id="dd" style="color: skyblue;">
<h2>故事是从一个叫做张小凡的普通少年开始的</h2>
<p>故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的
故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的
故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的故事是从一个叫做张小凡的普通少年开始的
</p>
</div>
</body>
</html>
3、!important 属性
- !important在CSS 中的作用:主要是用来提升属性的权重。其属性的权重值无穷大。
- 语法格式:属性:值 !important;
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>!import 属性</title>
<style type="text/css">
p{ /*加了!import属性,它的权重值会变成无穷大。*/
color:#f00 !important;
}
.d1{
color: #0f0;
}
#p2{
color: #00f;
}
</style>
</head>
<body>
<p class="d1" id="p2">黑马程序员</p>
</body>
</html>
- 使用!important属性,一定要注意以下几点:
- !important是提升的属性的权重,而不是提升选择器的权重;
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>!import 属性</title> <style type="text/css"> /*如果!import 提升的是选择器的权重,字体大小应该会是20px, 但是此处它是提升的color属性的优先级权重,因此字体显示的是100px。*/ p{ /*加了!import属性,它的权重值会变成无穷大。*/ color:#f00 !important; font-size: 20px; } .d1{ color: #0f0; } #p2{ color: #00f; font-size: 100px; } </style> </head> <body> <p class="d1" id="p2">黑马程序员</p> </body> </html>
- !important 不能提升继承过来的权重
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>!important不能提升继承过来的属性优先级权重</title> <style type="text/css"> div{ color:#f00 !important; /*不能提升该颜色属性的优先级*/ } h2{ color: #0f0; } </style> </head> <body> <div> <h2>黑马程序员</h2> <!--最终还是显示绿色--> </div> </body> </html>
- !important是提升的属性的权重,而不是提升选择器的权重;
4、一个标签内可以携带多个类名
- 类名:class的属性值
- 一个标签内可以携带多个类名,指的是class的属性值可以有多个,每一个属性值之间使用空格分隔。
举例: <标签名 class=“值1 值2 值3”></标签名> - 多个类名的优点:
- 减少css的代码量
- 多个类名的样式会叠加到当前元素上
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>一个标签内可以携带多个类名</title> <style type="text/css"> /*给class=div1的元素内容设置为加粗效果 给class=div2的元素内容字体设置为红色 给class=div3的元素内容设置为加粗并且颜色为红色 */ .div1{ font-weight: bold; } .div2{ color: #f00; } /*.div3{ font-weight: bold; color: #f00; }*/ </style> </head> <body> <!--div.div${黑马程序员$}*3表示的是 div盒子 .div 表示类,类名为div ${...$} 表示div框架,其中的...位置显示的是div中的内容 *3 表示形成3个 div 并自动编号 --> <div class="div1">黑马程序员1</div> <div class="div2">黑马程序员2</div> <!--<div class="div3">黑马程序员3</div>--> <div class="div1 div2">黑马程序员3</div> </body> </html>
- 注意:如果说一个标签内的多个类名,它们设置的样式是一样的话,就会存在样式的冲突。
以上代码说明:如果一个标签内的多个类名上面设置的样式一样的话,就会出现样式冲突,那么将会以css代码中写在最下面的那个为标准,和HTML中的class属性值的顺序没有关系。<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>样式冲突</title> <style type="text/css"> .c1{ color: #f00; } .c2{ color: #f0f; } </style> </head> <body> <p class="c1 c2">文本</p> </body> </html>
5、背景样式属性(非常重要)
属性 | 值 | 含义 |
---|---|---|
background-color | #ff0000、red、rgb(255,0,0) | 背景颜色 |
background-image | url(图像路径和名称) | 背景图像 |
background-repeat | repeat、repeat-x、repeat-y、no-repeat | 背景图像是否重复 |
background-position | center center或x% y%或xpos ypos | 背景图像起始位置 |
background-attachment | scroll(滚动)、fixed(固定) | 设置背景图像是否固定或者随着页面的其余部分滚动 |
background | url(1.jpg) no-repeat center center | 设置背景的简写属性 |
- 使用background-color设置背景颜色的前提是要么这个元素是有内容的,要么设置了一定的高度和宽度。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>背景颜色</title>
<style type="text/css">
.b{
height: 100px;
width: 100px;
background-color: #f00;
}
</style>
</head>
<body>
<div class="b"></div>
</body>
</html>
- 使用background-img设置背景图像时,同样要具备前提条件:要么这个元素是有内容的,要么设置了一定的高度和宽度。 背景图片默认是平铺的。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>背景图片</title>
<style type="text/css">
.b{
width: 1000px;
height: 1000px;
background-image: url(./img/fengfeng.jpg);
}
</style>
</head>
<body>
<div class="b"></div>
</body>
</html>
- background-repeat 设置背景图片是否平铺,同样是要满足以上前提:要么这个元素是有内容的,要么设置了一定的高度和宽度。 背景图片默认是平铺的。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>背景图片平铺效果设置</title>
<style type="text/css">
.b{
width: 1000px;
height: 1000px;
border: 1px solid #f00;
background-image: url(./img/fengfeng.jpg);
background-repeat: repeat-x;
}
</style>
</head>
<body>
<div class="b"></div>
</body>
</html>
- background-position: 水平位置 垂直位置
- 有三种表示方式: 英文单词、固定值、百分比, 这三种方式可以混合使用,可以同时使用英文单词或者是固定值或者百分比。
- 英文单词表示方式:
- 水平位置:left、center、right
- 垂直位置:top、center、bottom
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>背景图片的位置</title> <style type="text/css"> .box{ width: 1000px; height: 1000px; border: 1px solid #000; margin-left: auto; margin-right: auto; background-image: url(./img/fengfeng.jpg); background-repeat: no-repeat; background-position: center center; /*中心位置*/ } </style> </head> <body> <div class="box"></div> </body> </html>
- 固定值的表示方式
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>背景图片的位置</title> <style type="text/css"> .box{ width: 1000px; height: 1000px; border: 1px solid #000; margin-left: auto; margin-right: auto; background-image: url(./img/fengfeng.jpg); background-repeat: no-repeat; background-position: 100px 100px; /*距离左边和上边分别是100px的位置*/ } </style> </head> <body> <div class="box"></div> </body> </html>
- 百分比表示
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>背景图片的位置</title> <style type="text/css"> .box{ width: 1000px; height: 1000px; border: 1px solid #000; margin-left: auto; margin-right: auto; background-image: url(./img/fengfeng.jpg); background-repeat: no-repeat; background-position: 100% 0%; /*右上角*/ } </style> </head> <body> <div class="box"></div> </body> </html>
- 混合使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>背景图片的位置</title> <style type="text/css"> .box{ width: 1000px; height: 1000px; border: 1px solid #000; margin-left: auto; margin-right: auto; background-image: url(./img/fengfeng.jpg); background-repeat: no-repeat; background-position: 100% top; /*右上角*/ } </style> </head> <body> <div class="box"></div> </body> </html>
- 英文单词表示方式:
- 有三种表示方式: 英文单词、固定值、百分比, 这三种方式可以混合使用,可以同时使用英文单词或者是固定值或者百分比。
- background-attachment
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>背景图片是否固定</title> <style type="text/css"> .box{ width: 1000px; height: 1000px; border: 1px solid #00f; margin-left: auto; margin-right: auto; background-image: url(./img/fengfeng.jpg); background-repeat: no-repeat; background-position: center center; background-attachment: scroll; } h2{ text-align: center; } p{ text-indent: 2em; } </style> </head> <body> <div class="box"> <h2>心理罪</h2> <p> 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 方木是绿藤市公认的犯罪心理学天才,在与警察邰伟联手破获一起离奇的校园连环杀人案中,经历了他一生难以弥合的创伤,因而颓废沉沦,甚至自欺欺人地选择将一切遗忘。然而魔鬼的挑衅却从未停止,又一起神秘的连环凶案让方木身陷囹圄。他不得不撕开自己永远不愿面对的伤疤,凝视自己内心的心理罪,与身份诡秘的魔鬼缠斗。 </p> </div> </body> </html>
- background :简写属性,可以同时设置多个样式,比如 背景颜色,背景图片,背景图片是否平铺,水平位置 处置位置等, background简写属性的值个数不定,顺序也不定,每一个值之间使用空格分隔开。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>简写属性</title>
<style type="text/css">
.box{
width: 1000px;
height: 1000px;
border: 1px solid #00f;
margin-left: auto;
margin-right: auto;
background: #ccc url(./img/fengfeng.jpg) no-repeat center center fixed;
}
</style>
</head>
<body>
<div class="box"></div>
</body>
</html>
ewport" content=“width=device-width, initial-scale=1.0”>
```