一、CSS简介
1、什么是CSS
css:Cascading Style Sheet
是一组样式设置规则,用于控制页面的外观样式
2、为什么使用CSS
- 实现内容与样式的分离,便于团队开发
- 样式复用,便于网站的后期维护
- 页面的精确控制,让网页更精美
3、CSS作用 - 页面外观美化
- 布局和定位
二、基本用法
1、CSS语法 - 选择器:要修饰的对象(东西)
- 属性名:修改对象的哪个属性(样式)
- 属性值:样式的取值
案例
2、CSS应用样式
也称为CSS引用样式,有三种方式:内部样式、行内样式、外部样式
2.1、内部样式
也称为内嵌样式,在页面头部通过style标签定义对当前页面中所有符合样式选择器的标签都起作用
2.2、行内样式
也称为嵌入样式,使用HTML标签的style属性定义只对设置style属性的标签起作用
2.3、外部样式
使用单独的CSS文件来定义,然后在页面中使用link标签或@import指令引入 -
@import指令导入外部样式文件1、<style>2、@import "CSS样式文件的路径"3、@import url(CSS样式文件的路径)4、</style>
案例
三、选择器
1、基础选择器
1.1、标签选择器
也称为元素选择器,使用HTML标签作为选择器名称
以标签名作为样式应用的依据
1.2 、类选择器使用自定义名称,以.点号 作为前缀,然后通过HTML标签的class属性调用类选择器
以标签的class属性作为样式应用的依据
注意事项:- 调用时不能添加.点号
同时调用多个类选择器时以空格分隔 - 类选择器定义时,名称不能以数字开头
- 调用时不能添加.点号
1.3、 ID选择器
使用自定义名称,以 #号作为前缀,然后通过HTML标签的id属性进行名称匹配
以标签的id属性作为样式应用的依据,一对一的关系
案例
二、复杂选择器
2.1、复合选择器
标签选择器和类选择器、标签选择器和ID选择器,一起使用
必须同时满足两个条件才能应用样式
2.2 、组合选择器
也称为集体声明
将多个具有相同样式的选择器放在一起声明,使用逗号隔开
2.3、 嵌套选择器
在某个选择器内再设置选择器,通过空格隔开
只满足层次关系最里层的选择器所对应的标签才会应用样式
注意:使用空格时不区分父子还是后代,使用CSS3中新增的>时必须是父子关系才行
案例
2.4、 伪类选择器
根据不同的状态来显示不同的样式,一般多用于标签
四种状态:
- .link未访问的链接
- .visited已访问的链接
- .hover鼠标移动链接上,即悬浮在链接上
- .active选定的链接,被**
注意:默认超链接为蓝色、下划线
2.5 、伪元素选择器 - :first-lentter为第一个字符添加样式
- :first-line为第一行添加样式
- :before在元素内容的最前面添加内容,需要配合content属性使用
- :after在元素内容的最后面添加内容,需要配合content属性使用
案例
三、选择器的优先级
3.1、 优先级
行内样式>ID选择器>类选择器>标签选择器
原因:首先加载标签选择器,再加载类选择器然后加载ID选择器,最后加载行内样式
3.2、内外部样式加载顺序
就近原则
原因:按照书写顺序依次加载,在同优先级的前提下,后面加载的会覆盖前面加载的同名样式,所以离的越近越优先
3.3 、!important
可以使用!important使某个样式有最高的优先级
案例
四、常用的CSS属性
1、字体属性
定义字体相关的样式
1.1、 font-size
取值: - inherited继承,默认从父标签继承字体大小(默认值),所有CSS属性的默认值都是inherited
- pix像素pixel
- %百分比,相对于父标签的字体大小的百分比
- em倍数,相对于父标签字体大小的倍数
HTML根元素默认字体的大小为16px,也称为基础字体大小
1.2、 font-weight
取值: - normal普通(默认)
- bold粗体
- 自定义400 normal 700 bold
1.3 、font-family
要求系统中要安装指定的字体
一般建议写3种字体:首选、其次、备用,以逗号隔开
1.4 、字体样式
取值: - normal普通
- italic斜体
1.5、 font
简写属性,font:font-style/font-weight/font-size/font-family
必修按此顺序书写
案例
二、文本属性
2.1、 color
取值:
四种写法: - 颜色名称:使用英文单词
- 16进制的RGB:#RRGGBB
特殊情况下可以简写:
注意:不区分大小写 - rgb函数:rgb(red、green、blue)
每个颜色的取值范围[0,255]
rgba函数:
rgba(red,green,blue,alpha)
可以设置透明度,alpha取值范围:[0,1]0表示完全透明 1表示完全不透明
案例