金华市网站建设_网站建设公司_Angular_seo优化
2025/12/17 12:37:12 网站建设 项目流程

文章目录

  • 一、CSS简介
  • 1. CSS介绍
  • 2. CSS三大特性
  • 3. CSS位置分类
  • 1. 内联样式表(行内样式表)
  • 2. 内部样式表
  • 3. 外部样式表
  • 二、CSS选择器
  • 1. 基础选择器
  • (1)类型选择器
  • (2)类选择器
  • (3)id选择器
  • (4)类选择器和id选择器的区别
  • (5)通配符选择器
  • 2. 关系选择器
  • (1)后代选择器
  • (2)子代选择器
  • (3)邻接兄弟选择器
  • (4)通用兄弟选择器
  • 3. 分组选择器
  • 4. 伪类选择器
  • (1)状态伪类
  • 1. 链接伪类
  • 2. 用户行为伪类
  • (2)结构伪类
  • (3)表单伪类
  • 5. 伪元素选择器
  • 1.选择特定部分
  • 2. 插入内容
  • 6. 属性选择器
  • 三、CSS文本样式
  • 1. 字体样式
  • (1)字体颜色 color
  • (2)字体族 font-family
  • (3)字体大小 font-size
  • (4)字体风格font-style
  • (5)字体粗体 font-weight
  • (6)字体装饰 text-decoration
  • 2. 文本布局
  • (1)文本对齐 text-align
  • (2)首行缩进 text-indent
  • (3)文本字符间距 letter-spacing
  • (4)行高 line-height
  • (5)font简写
  • 总结

一、CSS简介

1. CSS介绍

  • CSS的核心是控制视觉表现。
  • CSS (Cascading Style Sheets,层叠样式表)。是用来控制网页在浏览器中的显示外观的语言。
  • CSS3现在已被大部分现代浏览器支持,而下一版的 CSS4 仍在开发中。
HTML是结构,用于展示内容;
CSS是样式,用于设置网页的样式及布局。

2. CSS三大特性

  • 继承性:子元素继承父元素样式,主要是继承跟文字相关的样式;
  • 层叠性:后面样式会覆盖前面样式,主要解决样式冲突问题,但是要看选择器权重来确定优先级;
  • 优先级:优先级由选择器的权重决定,权重高的规则覆盖权重低的规则。

3. CSS位置分类

1. 内联样式表(行内样式表)

样式写到标签内部,可以控制当前标签的样式,特殊情况使用。
<p style="color:red; font-size:14px;">文字内容</p>

2. 内部样式表

写到<head> 标签中,脱离结构,可以控制当前页面的所有标签,较为常用。

3. 外部样式表

单独新建一个CSS文件,完全脱离结构,可以控制整个网站的所有标签,最常用
<link rel="stylesheet" href="./css/index.css">

二、CSS选择器

CSS选择器是CSS规则的第一部分。它是选择HTML元素的方式。

CSS属性:采用键值对形式。属性名:属性值。

CSS选择器:选择标签

CSS属性:修改样式

1. 基础选择器

基础选择器指的是由单个选择器组成,常见的有:

(1)类型选择器

类型选择器选择某个类型的元素,也称为标签选择器
p { color: gold; }
CSS 层叠性:
CSS 规则可以同时作用于一个元素,浏览器通过特定规则决定最终生效的样式。层叠性解决了样式冲突问题。
原则:后定义的样式覆盖先前的样式。(就近原则

(2)类选择器

类选择器选择某一个元素或者多个元素

1. 类名自定义,不能是中文、纯数字
2. 多个英文单词组成尽量使用 - 链接
3. 命名有要意义,尽量见名知义
4. class属性可以有多类名中间用空格隔开

(3)id选择器

选择HTML中具有特定的id属性的唯一元素

(4)类选择器和id选择器的区别

a. 类选择器

  1. 语法:以 . 开头,后跟类名(如 .nav)
  2. 作用:选择 class 属性的一个或多个元素
  3. 特点:可以使用多次
  4. 类似:身份证的名字,可以使用多次
  5. 场景:后期修改样式基本都是类选择器

b. id选择器

  1. 语法:#开头,后跟id名(如 #header)
  2. 作用:选择 特定 id 属性的唯一元素
  3. 特点:同一页面中,id 值必须唯一(不能重复)
  4. 类似:身份证的编号,唯一,只能用一次
  5. 场景:后期主要是配合JavaScript 添加交互效果

(5)通配符选择器

通配符选择器可以选择 HTML 中所有的标签,进行样式修改
* { margin: 0; /* 去除外边距 */ padding: 0; /* 去除内边距 */ box-sizing: border-box; /* 统一盒模型 */ }
特殊情况下通过通配符清除所有元素的默认边距和填充,统一不同浏览器的默认样式

2. 关系选择器

关系选择器是通过位置关系来选择目标元素(标签),可以更精准选择某些元素。常见的有:

(1)后代选择器

选择某个元素的后代元素(不限层级,包括子元素、孙元素等)

说明:
选择div标签里面的p元素,中间空格隔开。
父级div作用是限定,子元素p修改样式
父级和子集都可以是任意选择器

(2)子代选择器

选择某个元素的直接子元素

选择div标签里面的第一层span元素,中间>隔开, 理解为亲儿子

(3)邻接兄弟选择器

紧邻的的下一个同级元素

h2+p { color: pink; }

选择紧跟着h2后面的第一个p元素

(4)通用兄弟选择器

选择之后的所有同级元素

h2~p { color: pink; }

选择紧跟着h2后面的所有p元素


3. 分组选择器

是将不同的选择器组合在一起。使用逗号分割。 也称为并集选择器
div, span { color: red; }
使用场景:
1. 多个元素具备相同样式。

4. 伪类选择器

选择元素的特定状态结构位置,符号是冒号(:)

(1)状态伪类

根据用户交互或状态变化选择。比如:鼠标经过链接、表单获得焦点等。

1. 链接伪类
链接伪类用于根据链接的不同状态(如未访问、悬停、点击等)为其添加样式,从而提升用户体验和界面交互性。
  • a:link 未访问链接的默认样式
  • a:visited 已访问链接的样式
  • a:hover 鼠标悬停在链接上时的反馈
  • a:active 链接被点击时的瞬时状态(按下到松开)
/* 链接伪类 */ /* 未访问链接 */ a:link { color: #000; text-decoration: none; } /* 已访问链接 */ a:visited { color: orange; text-decoration: none; } /* 鼠标悬停链接 */ a:hover { color: red; text-decoration: underline; } /* 被点击的状态 */ a:active { color: blue; text-decoration: none; }
使用场景:
1. 设置链接不同状态的样式。
2. 用户行为伪类
用户以某种方式和文档交互的时候应用,这些用户行为伪类,有时叫做动态伪类
  • :hover 鼠标经过元素
  • :focus 获得焦点的元素(表单)
/* :hover 鼠标经过伪类 */ .box { width: 100px; height: 100px; background-color: pink; text-align: center; line-height: 100px; } .box:hover { background-color: red; color: #fff; } .search { width: 100px; height: 20px; /* transition: .5s; */ } /* :focus 获得焦点伪类 */ .search:focus { background-color: red; width: 200px; }
使用场景:
1. 鼠标经过元素的时候,修改样式。
2. 表单获得焦点的时候

(2)结构伪类

根据元素的位置选择目标元素。
  • :first-child 一组兄弟元素中的第一个元素
  • :last-child 一组兄弟元素中的最后一个元素
  • :nth-child(n) 一组兄弟元素列表中第n个元素
n 的取值可以是
  1. 数字。 从1开始
  2. 关键字。 odd 奇数 even 偶数
  3. 公式:
  • nth-child(3n) 3的倍数,第3.6.9...个元素
  • nth-child(n+2) 第2个以及以后的元素
  • nth-child(-n+3) 前面3个元素
  • 注意公式的n取值从0开始计算
/* 选择第一个小li */ .ul1 li:first-child { color: red; }
使用场景:
1. 选择第1个或者最后一个或者第n个元素。

(3)表单伪类

针对表单元素的状态。

  • :disabled 表单禁用
  • :checked 选中状态,单选复选按钮
/* 表单禁用伪类选择器 */ button:disabled { /* background: #ccc; */ /* 透明度,让整个按钮透明 0~1 */ opacity: .4; } /* 表单被选中伪类选择器 */ input:checked+label { color: #ff6900; }
使用场景:
1. 表单按钮禁用的时候,调整颜色。
2. 复选框选中修改样式

5. 伪元素选择器

选择元素的特定部分(使用双冒号 ::)

1.选择特定部分

  • ::first-line 选择首行
  • ::first-letter 首字母
  • ::placeholder 选择input或者textarea占位符
/* 选择首行 */ p::first-line { color: #ff6900; } /* 选择首字母 */ p::first-letter { color: red; font-size: 28px; } textarea { color: pink; font-size: 14px; } textarea::placeholder { color: red; font-size: 12px; }
使用场景:
1. 让表单里面的placholder文字变颜色。
2. 做很多的修饰效果。

2. 插入内容

  • ::before 元素内插入伪元素,作为第一个元素
  • ::after 元素内插入伪元素,作为最后一个元素

/* before和after伪元素 */ div::before { content: '开始'; color: red; } div::after { content: '结束'; color: red; }
注意:
  • before和after 是插入的伪元素,特性类似内联元素。
  • content属性是必须,不能省略,没有内容空引号即可。
  • 后期非常常用。

6. 属性选择器

根据元素的属性特征来精准定位元素,从而实现更灵活的样式控制
  • [属性] 匹配包含指定属性的元素
  • [属性=值] 匹配属性值等于指定值的元素
  • [属性^=值] 匹配属性值以指定字符串开头的元素
  • [属性$=值] 匹配属性值以指定字符串结尾的元素。
  • [属性*=值] 匹配属性值任意位置包含指定子串的元素
a { color: #000; text-decoration: none; } /* 属性选择器 */ /* 1. 选择包含属性 */ a[class] { color: red; } /* 2. 选择属性等于值 完全匹配 */ a[class="font"] { color: red; } /* 3. 选择属性值以xx开头 */ a[class^="font"] { color: red; } /* 4. 选择属性值以xx结尾 */ a[class$=t14] { color: red; } /* 5. 选择属性值包含xx */ a[class*="font"] { color: red; } input[type="text"], input[type="password"] { /* 去掉轮廓线 */ outline: none; }
使用场景:
1. 表单样式控制。
2. 图标字体控制.
3. 国际化语言适配等等

三、CSS文本样式

CSS 文本样式用于控制网页中文字的外观,包括字体、颜色、对齐、间距等,主要分为两大类:
注意: 文字是无法直接通过CSS来更改样式的,必须要用适合的标签来包裹它们,本质是修改标签样式,里面文字跟随样式变化

1. 字体样式

(1)字体颜色 color

  • 最常见的颜色指定方式:使用关键字、十六进制值和 rgb() 值。
  • 学习可以用关键字,开发用十六进制,特殊情况用rgb
  1. 关键字:这些颜色通常不会在生产环境的网 站中使用,主要学习使用。 比如:red、green、blue、pink等。
    .pink { color: pink; }
  2. 十六进制:这个是开发最常用的。实际开发中,我们从设计稿直接复制即可。 比如:红色 #FF0000 或者 #F00。
    .color16 { /* color: #f00; */ color: #2CB5A5; }
  3. rgb格式:rgb() 函数接受三个参数,分别表示颜色的 红、绿和蓝。也是设计稿复制的比如:红色 rgb(255,0,0) ,另有:rgba(255,0,0, 0.3) 文字透明, 最后一个数值取值 0~1 (0完全透明 1 完全不透明)
    .rgb { color: rgb(255, 0, 0); } /* 半透明 0是完全透明 1是完全不透明 */ .rgba { color: rgba(255, 0, 0, .5); background-color: green; }

(2)字体族 font-family

给定一个有先后顺序的,由字体名或者字体族名组成的列表来为选定的元素设置字体

.font { font-family:Helvetica Neue,Helvetica,Arial,Microsoft Yahei,Hiragino Sans GB,Heiti SC,WenQuanYi Micro Hei,sans-serif; }
属性值用逗号隔开。浏览器会选择列表中第一个该计算机上有安装的字体。

(3)字体大小 font-size

CSS 像素(CSS Pixel) 是 CSS 中用于定义长度、尺寸的单位(简写为 px)

/* 3. 字体大小 */ .font12 { font-size: 12px; } .font14 { font-size: 14px; } .fong16 { font-size: 16px; }
不同浏览器默认字体大小不一样,谷歌默认16px,建议给body标签统一指定大小,做到浏览器统一

(4)字体风格font-style

font-style 用来打开和关闭文本 italic (斜体) 。
属性值:
  • normal:将文本设置为普通字体 (将存在的斜体关闭)
  • italic:如果当前字体的斜体版本可用,那么文本设置为斜体版本
/* 4. 字体样式倾斜 */ .italic { font-style: italic; } .normal { font-style: normal; }
最常见: 让 em 或者 i 标签取消默认倾斜

(5)字体粗体 font-weight

font-weight 设置文字的粗体大小。
属性值:
  • normal:正常粗细
  • bold:加粗
数字属性值:(常用)
  • 400:正常粗细
  • 700:加粗
取值范围100-900之间
/* 5. 字体粗细 */ .nobold { /* font-weight: normal; */ font-weight: 400; } .bold { /* font-weight: 700; */ font-weight: bold; }
使用场景:
1. 很多标题是不要加粗的,此时可以用CSS取消加粗。
2. 部分大批量文字可以利用CSS加粗。

(6)字体装饰 text-decoration

设置/取消字体上的文本装饰 。
属性值:
  • none:取消文本装饰
  • underline:下划线
  • overline: 上划线
  • line-through:穿过文本的线
/* 6. 字体装饰 */ a { text-decoration: none; } .underline { text-decoration: underline; } .overline { text-decoration: overline; } .line-through { text-decoration: line-through; }
使用场景:
1. 最常见设置链接下划线,比如取消下划线等。
2. 特殊情况添加删除线。

2. 文本布局

(1)文本对齐 text-align

控制文本在它所在的块级盒子内如何水平对齐

属性值:

  • left: 文本左对齐(默认)
  • right: 文本右对齐
  • center:文本水平居中对齐
  • justify: 自动改变字间距,两端对齐
text-align: center;
使用场景:
1. 文本/图片在盒子水平对齐
2. 文章文字两端对齐。(腾讯体育)

(2)首行缩进 text-indent

设置块级元素中文本行前面空格(缩进)的长度
属性值:
  • 数字:常见单位是em,相对单位,本元素的文字大小
  • 1em 等于当前元素的字体大小,如果当前元素
  • 没有大小,则按照父元素文字大小
/* 2. 文本缩进 */ /* text-indent: 20px; */ text-indent: 2em;
使用场景:
1. 段落首行缩进2个字的效果。
2. logo隐藏文字效果

(3)文本字符间距 letter-spacing

用于设置文本字符的间距
letter-spacing: 5px;
使用场景:
1. 调整字与字之间距离,用户体验更好。

(4)行高 line-height

设置文本每行之间的高
属性值:
  • 数字px
  • 数字不带单位(当前字体大小的倍数)
/* 行高等于盒子高度,可以让单行文本垂直居中对齐 */ line-height: 50px;
行高等于盒子高度,则单行文字垂直居中
使用场景:
1. 设置多行文本之间的上下间距
2. 让单行文本垂直居中

(5)font简写

font 简写属性在一个声明中设置多个字体属性
语法:
font: font-style font-weight font-size/line-height font-family;
  • 其中font-sizefont-family是必须写
  • 其他可以省略,默认显示
  • 属性有严格的书写顺序

总结

这篇主要介绍CSS基础知识,CSS选择器,CSS文本样式。下一篇介绍盒子模型

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询