CSS(网页美容)
重点:选择器、盒子模型、浮动、定位、动画,伸缩布局
Css的作用:
美化网页:CSS控制标签的样式
 网页布局:CSS控制标签的位置
 概念:层叠样式表(级联样式表)
书写方法
优先级:内联>内嵌>外部
- 内联:
<body><p style="font: 15px; color: red">这是一段文字。</p>
</body>
- 内嵌(内部):
 就是把CSS代码写在head标签中
<!DOCTYPE html>
<html>
<head><title></title><style type="text/css">p{color:green}</style>
</head>
<body>
</body>
</html>
- 外嵌:自己新建一个单独的CSS文件,在CSS文件中不要谢style标签,直接写CSS代码就OK了
 首先自己建立一个名字为CSS的文件夹,里面存放的就是CSS样式文件

 
 验证优先级:
<!DOCTYPE html>
<html>
<head><title></title><!--下面p为标签选择器--><style type="text/css">p{color: red;}</style><link rel="stylesheet" type="text/css" href="CSS/a.css">
</head>
<body><p style="font-size: 15px; color:yellow">这是一段文字。</p>
</body>
</html>
结果:
 
 优先级:内联>内嵌>外部
 优先级:内联>内嵌>外部
 优先级:内联>内嵌>外部。重要事情说三遍。
CSS语法
选择器{属性:值;。。。。}
 例如:p{font:15px;color:red;}
选择器分类
 一、基础选择器
 1. 标签选择器
 Html的标签名可以设置为样式的标签
p{color: red;}
2. 类选择器
 . 自定义类名:{class属性:值;}
一个类样式可以被多个标签同时调用
<!DOCTYPE html>
<html>
<head><title></title><!--下面p为标签选择器--><style type="text/css">/*类样式的定义*/.test{color: red;font-size: 30px;}</style></head>
<body><!--类样式调用--><p class="test">Hello</p><p class="test">Hello2</p>
</body>
</html>

 特点:多个lclass属性的值可以重复,就像人一样,名字可能会相同的
 一个标签可以同时调用多个类样式
<!DOCTYPE html>
<html>
<head><title></title><style type="text/css">/*类样式的定义*/.test{font-size:55px;}.test1{color: red;}</style>	
</head>
<body><!--类样式调用--><p class="test test1">Hello</p>	
</body>
</html>
3. ID选择器
 #id选择器{属性:值}
<!DOCTYPE html>
<html>
<head><title></title><!--下面p为标签选择器--><style type="text/css">/*类样式的定义*/#test{color: red;font-size: 30px;}</style></head>
<body><!--类样式调用--><p id="test">Hello</p>
</body>
</html>
特点:ID的值是唯一的,不能重复,就跟人的身份证一样都是唯一的。
4. 通配符选择器
 语法:
 * {属性: 值;…}
 特点:
 将页面中所有的标签都选中
<!DOCTYPE html>
<html>
<head><style type="text/css">*{height:200px;width: 200px;border: 1px solid red;	}</style>	
</head>
<body><div class="c1"></div><div class="c2"></div><div class="c3"></div>
</body>
</html>
规范:不能使用特殊字符或者以特殊字符开头($,#,@,%…) 建议不推荐使用标签名作为类名
补充:px像素
 em:一个文字的大小
 颜色的表示方式
 red,green…
 rgb(三原色)
 使用十六进制标表示颜色(#000-fff)
 文本修饰
 
<!DOCTYPE html>
<html>
<head>
<style type="text/css">p{
text-shadow: 0px 0px 10px green;}
</style></head>
<body><p>文本修饰</p>
</body>
</html>
第一个值可以设置正数或者负数,设置文字阴影在水平方向的一个偏移量
 第二个值可以设置正数或者负数,设置文字阴影在垂直方向的偏移量
 第三个值代表的是文字阴影的模糊度, 不能设置负数
 第四个值代表文字阴影的颜色。
 同时可以设置多个阴影,用逗号隔开
font属性介绍
<!DOCTYPE html>
<html>
<head>
<style type="text/css">p{
font-family: "宋体";
font-size: 20px;
font-weight:bold;
font-style:normal;
line-height: 20px;}
</style></head>
<body><p>aaaaaaaaaaaaaaaaaaaaaaaaaaa</p>
</body>
</html>
font-size:设置文字的大小
 font-family:设置文字字体(宋体,黑体,微软雅黑等等)
 font-family是可以设置若干个字体的。一本使用常用字体设置
 font-weight:设置字体是否加粗
 值为normal或 bold
 font-style:文字是否斜体
 值:noema或 italic
 line-height:文字行高,改变文字之间的上下间距
 font属性联写,也算代码简化的一种方式
<style type="text/css">p{font:italic 700 12px/24px "宋体";}	
</style>
p{font-style font-weight font-size/line-height font-family}
 注意:
 1、顺序不能改变;
 2、简写为一行的时候,font-size和line-height直接一样要用斜杠/,不能分开写;
 3、没有赋值的属性,会自动使用默认值;
 4.必须设置font-size 和font-family,font-size设置在font-family之前
二、复合选择器(交集选择器)
 1. 后代选择器
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
div p{width: 200px;height: 200px;border: 1px solid red;font:italic 700 20px/20px "宋体";}
}
</style></head>
<body>
<div><p>A</p><p>B</p>
</div>
</body>
</html>
注意:后代标签其之间的结果后关系必须是嵌套关系
 后代选择器中只能选中所有的后代元素(直接子元素和间接子元素)
 后代选择器中,选择器与选择器之间必须使用空格隔开
 2. 子代选择器
 选择器>选择器 {属性: 值;}
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
div>span{color: red;
}</style></head>
<body>
<div><span>a</span>
</div>
</body>
</html>
注意;
 子代选择器只能选中直接子元素
 子代选择器不能选中父元素
 子代选择器标签的结构必须是嵌套结构
 3. 并集选择器
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
div,p,li,span{color: green;
}</style>
</head>
<body>
<div><div></div><p></p><li></li><span></span>
</div>
</body>
</html>
4. 属性选择器
标签[标签属性]{样式}
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
a[href]{color: red;
}</style>
</head>
<body>
<div><a href="www.baidu.com">百度</a>
</div>
</body>
</html>
5. 结构伪类选择器
 使用方法:选择器:伪元素{样式}
 :first-child {属性: 值;} 选中父元素中的第一个子元素
 :last-child {属性: 值;} 选中父元素中最后一个子元素
 :nth-child(n) {属性: 值; } 选中父元素中第n个子元素
 n可以设置一个关键字 odd(奇数个数) | even(偶数个数)
 n可以是一个表达式 an+b a和b可以设置正数和负数
 :nth-last-child(n){属性: 值;} 选中倒数第n个子元素
6. 标签制定式选择器
 我觉得叫标签类选择器好。直接
 标签名.类名{属性:值;}
<!DOCTYPE html>
<html>
<head>
<style type="text/css">p.a1{font-size: 20px;color: red;}p.b1{font-size: 30px;color: green;}
</style></head>
<body><p class="a1">aaaaaaaaaa</p><p class="b1">bbbbbbbbbbbbbbb</p>
</body>
</html>

下面是常见的属性
 
