什么是CSS?
全称:
Cascading Style Sheets,通常称为CSS样式表或层叠样式表(级联样式表)。
**作用:**
为HTML标记语言提供了一种样式描述,即【设置HTML页面中的元素的位置、排版、样式外观等】
如文本内容(字体、大小、对齐方式等)、图片的外形(宽、高、边框等)。
### 2、CSS语法规范
CSS 规则由两个主要的部分构成:选择器、一条或多条声明。
选择器:通常是需要改变样式的 HTML 标签。
声明组:以大括号{}括起来。
每条声明由一个属性和一个值组成,属性与属性值之间以【冒号】分隔,用【分号】将每个声明分开。
### 3、CSS引入方法
当读到一个样式表时,浏览器会根据它来格式化 HTML 文档,插入样式表的方法有三种:行间样式表、内部样式表、外部样式。
#### 3.1 行间样式
概述:
- 通过HTML元素的style属性设置样式称为行间样式
- 代码示例
```HTML
<div style="width:100px;height:100px;background-color:red;">div</div>
```
- 注:任何HTML元素都可以设置行间样式
#### 3.2 内部样式
概述:
- 在head标签的内部,由style标签包含的样式称为内部样式
- 代码示例
```html
<head>
<style>css样式
</style>
```
#### 3.3 外部样式
概述:
- 外部样式表是指将CSS编写在扩展名为.css 的单独文件中,使用link标签引用
- 新建外部样式表
- 头部标签内部使用link标签引用
```HTML
<head>
<link rel="stylesheet" href="style.css">
</head>
```
- **说明**
- href="" 资源链接的地址
- rel表示引入文件与当前文档的关系
- stylesheet为样式表
#### 3.4 总结
- 行间样式适用于某个元素拥有特殊样式时使用,结构表现【不分离】
- 内部样式适用于单个页面拥有特殊样式时使用,结构表现【半分离】
- 外部样式适用于多个页面拥有相同样式时使用,结构表现【相分离】
### 4、css注释
#### 4.1 什么是注释
注释即对代码的解释和说明,不会被浏览器解析执行。
#### 4.2 注释的语法
CSS中的注释以"注释以`/*`开头,以`*/`结尾,开始和结束中间为注释内容。
#### 4.3 注释的作用
解释说明,标记不同代码节的开始
代码调试,用于在测试中临时禁用一段代码
#### 4.4 生成快捷方式
ctrl + / 取消或添加
## CSS选择器
### 1、什么是选择器
- CSS选择器是CSS规则的第一部分,每个CSS规则都以一个选择器或一组选择器为开始
- CSS选择器即用于“查找”(或选取)要设置样式的 HTML 元素的模式
- 选择器可以分为基础选择器、复合选择器
### 2、基本选择器
#### 2.1 通配(通用)选择器
- 语法
```css
*{
样式声明;
}
```
- 作用:匹配任意类型的HTML元素
- 实例演示:
```html
<style>
/* 页面上所有元素都被选择 */
* {
background-color:green;
}
</style>
<body>
<p>p</p>
<div>div1</div>
<div>div2
<div>div3</div>
</div>
</body>
```
#### 2.2 元素名称选择器
- 语法:
```css
元素名称 {
样式声明;
}
```
- 作用:选择所有同一元素名称的所有元素
- 实例演示:
```css
/* 选择body */
body{
background-color:green;
}
/* 选择页面上所有的div */
div{
width:100px;
height:100px;
background-color:red;
}
/* 选择页面上所有的p */
p{
background-color: pink;
}
```
#### 2.3 类选择器
- 语法
- HTML中通过class属性定义
如:
```html
<div class="box"></div>
```
- css中以点进行标识:
```css
.类名 {
样式声明;
}
```
- 作用:选择所有带有指定类名的元素
- 多类名的使用
语法:空格隔开
实例演示:
```html
<style>
.box{
background-color:red;
}
.size{
width:100px;
height:100px;
}
</style>
<body>
<p class="box size">p</p>
<div class="box">div1</div>
<div>div2
<div class="box">div3</div>
</div>
</body>
```