一、基本语法和页面引用
- 基本语法
1】给多个元素添加同一种样式:p,h,div{}
2】样式的优先顺序:设计者设计的样式>浏览器用户自定义的样式>浏览器自设样式
内联样式>内部样式(style)>外部样式
3】设置边框:border:2px blue solid
4】设置内边距:padding:16px
5】注:样式优先顺序的本质是距离需要设置的内容越近则优先级越高;
强制优先级:当我们为样式样式颜色的后面加上“空格+!important”时,该样式的优先级时最高的,可以为一个HTML文档引入多个css样式表
二、文本样式设置
#headers{
color: green; # 设置文字的颜色
font-size: 20px; # 设置文字的大小
font-family: "微软雅黑"; # 设置文字的字体
font-style: normal; # 设置文字的字形
font-weight: 600; # 设置文字的粗细
line-height: 40px; # 设置文字的行间距
text-decoration:underline;
text-indent: 24px; # 设置文字首行缩进
text-align: center; # 设置文字的对齐方式
}
<div id="headers">
欢迎进入图书管理系统<br />
gfb
</div>
三、颜色表示法
<style type="text/css">
h2{
font-size: 40px;
color: red; # 颜色表示法
}
span{
color: rgb(100,0,0); # 使用rgb表示颜色
}
p{
color: #f00; # 使用16进制数值进行颜色表示
}
</style>
<body>
<h2>欢迎进入王者荣耀1</h2>
<span>张飞</span>
<p>hello</p>
</body>
四、选择器
/*标签选择器*/
div{
color: green;
}
/*id选择器*/
#d1{
font-size: 30px;
}
/*类选择器*/
.c1{
font-family: "微软雅黑";
}
/*层级选择器*/
#d1 .c2 #d4{
font-size: 50px;
}
/*组选择器:如果有同样的样式设置就使用组选择器,比如我们要对id=d3和d4的div进行样式改变*/
#d3,#d4{
width: 50px;
height: 50px;
background-color: red;
}
<div id="d1" class="c1">
<div id="d2" class="c2">
<div id="d3" class="c3">
hello world1
</div>
<div id="d4" class="c3">
hello world2
</div>
</div>
</div>
伪类选择器
link:访问前样式-只适用于a标签
visited:访问后样式-只适用于a标签
action:点击时样式-适用于所有标签
hover:移上去样式-适用于所有标签
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
div{
width: 100px;
height: 100px;
background-color: red;
}
div:hover{
background-color: blue;
}
div:active{
background-color: yellow;
}
</style>
</head>
<body>
<div id="d1">
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
a{
/*text-decoration: none; /*祛除下划线*/*/
font-size: 100px;
}
a:link{color: pink;}
a:visited{color: blue;}
a:hover{color: green;}
a:active{color: yellow;}
</style>
</head>
<body>
<a href="">百度</a>
</body>
</html>
五、盒模型
- 基础语法
<style type="text/css">
body{
width: 100%; /*设置div的宽度*/
height: 100%; /*设置div的高度*/
background-color: pink; /*设置背景颜色*/
/*padding: 50px solid red;*/
/*border: 50px solid orange;*/
/*margin-top: 0px;*/
/*border-top-width: 10px;
border-top-color: orange;
border-top-style:solid;
border-color: red;
border-style: dashed;
border-width: 5px;*/
/*border: 10px dashed green;
padding-top:20px;
padding-left:30px;
padding-right:40px;
padding-bottom:50px; */
}
</style>
<body>
<div id="d1">
</div>
</body>
- 盒子模型的正式尺寸
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>盒子的真实尺寸</title>
<style type="text/css">
.box01{width:50px;height:50px;background-color:gold;}
.box02{width:50px;height:50px;background-color:gold;border:50px
solid #000}
.box03{width:50px;height:50px;background-color:gold;border:50px
solid #000;padding: 50px;}
</style>
</head>
<body>
<div class="box01">1</div>
<br />
<div class="box02">2</div>
<br />
<div class="box03">3</div>
</body>
</html>
注意:一定要看上图,border是介于padding和margin之间的
- 盒子模型使用技巧
1】技巧一:自动选择水平居中
/*外边距,位置设置为自动选择位置*/
margin:30px auto;
2】技巧二:div之间无缝连接
<style type="text/css">
div{
background-color: green;
width: 50px;
height: 50px;
margin: 1px;
}
</style>
3】在两个盒子嵌套时候,内部的盒子设置的margin-top会加到外边的盒子上,导致内部的盒子margin-top设置失败,解决方法如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#d2{
width: 100px;
height: 100px;
background: pink;
margin: 50px;
}
#d1{
width: 300px;
height: 300px;
background: green;
margin: 200px;
overflow: hidden;
}
</style>
</head>
<body>
<div id="d1">
<div id="d2">
</div>
</div>
</body>
</html>
六、CSS元素溢出问题
当子元素的尺寸超过父元素的尺寸时,需要设置父元素显示溢出的子元素的方式,设置的方法是通过overflow属性来设置。
overflow的设置项:
1、visible 默认值。内容不会被修剪,会呈现在元素框之外。
2、hidden 内容会被修剪,并且其余内容是不可见的,此属性还有清除浮动、清除margin-top塌陷的功能。
3、scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
4、auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
5、inherit 规定应该从父元素继承 overflow 属性的值。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
#d1{
width: 200px;
height: 100px;
background-color: red;
overflow: hidden;
}
#d2{
width: 100px;
height: 200px;
background-color: green;
}
</style>
</head>
<body>
<div id="d1">
<div id="d2">
</div>
</div>
</body>
</html>
七、块元素、内联元素和内联块元素
1】按元素类型分类
2】display元素:
display:block–表示按照块的特性显示
display:inline–表示按照内联的特性显示
display:inline-block–表示按照内联块的特性显示
display:none–表示不在页面中显示该标签
3】display:none和visibility:hidden
display:none—占用空间的隐藏
visibility:hidden–不占空间的隐藏
八、浮动
- 添加浮动
- 清除浮动
九、定位
浮动主要是用来做左右叠加,而定位一般用来做上下的叠加
十、background属性
background属性是css中应用比较多,且比较重要的一个属性,它是负责给盒子设置背景图片和背景颜色的,background是一个复合属性,它可以分解成如下几个设置项:
background-color 设置背景颜色
background-image 设置背景图片地址
background-repeat 设置背景图片如何重复平铺
background-position 设置背景图片的位置
background-attachment 设置背景图片是固定还是随着页面滚动条滚动