文章目录
前端查阅手册
快捷键(VScode)
复制该行到下一行 | shift+Alt+向下箭头 |
---|---|
CSS 语法规范
CSS 规则由两个主要的部分构成:选择器以及一条或多条声明。
-
选择器是用于指定 CSS 样式的 HTML 标签,花括号内是对该对象设置的具体样式
-
属性和属性值以“键值对”的形式出现
-
属性是对指定的对象设置的样式属性,例如字体大小、文本颜色等
-
属性和属性值之间用英文“:”分开
-
多个“键值对”之间用英文“;”进行区分
语法
所有的样式,都包含在 <style>
标签内,表示是样式表。<style>
标签一般写到 </head>
上方。
<head>
<style>
h4{
color:blue;
font = size:100px;
}
</style>
</head>
示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 选择器{样式} */
/* 给谁改样式{改什么样式} */
p {
/* 设置颜色 */
color: aqua;
/* 修改了文字大小为12像素 */
font-size: 20px;
}
</style>
</head>
<body>
<p>有点意思</p>
</body>
</html>
CSS 基础选择器
CSS 选择器的作用:选择器(选择符)就是根据不同需求把不同的标签选出来这就是选择器的作用。 简单来说,就是选择标签用的。
选择器分为基础选择器和复合选择器两个大类,我们这里先讲解一下基础选择器。
基础选择器是由单个选择器组成的
基础选择器又包括:标签选择器、类选择器>、id 选择器>和通配符选择器
标签选择器
标签选择器(元素选择器)是指用 HTML 标签名称作为选择器,按标签名称分类,为页面中某一类标签指定
统一的 CSS 样式。
语法
标签名{
属性1: 属性值1;
属性2: 属性值2;
属性3: 属性值3;
...
}
优点
能快速为页面中同类型的标签统一设置样式。
缺点
不能设计差异化样式,只能选择全部的当前标签。
代码示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
/* 选择器{样式} */
/* 给谁改样式{改什么样式} */
p {
/* 设置颜色 */
color: aqua;
/* 修改了文字大小为12像素 */
font-size: 20px;
}
div {
color: blueviolet;
font-size: 20px;
}
</style>
</head>
<body>
<p>男生</p>
<p>男生</p>
<p>男生</p>
<div>女生</div>
<div>女生</div>
<div>女生</div>
</body>
</html>
类选择器-单类名
如果想要差异化选择不同的标签,单独选一个或者某几个标签,可以使用类选择器.
语法
.类名 {
属性1: 属性值1; ...
}
<div class=‘red’> 变红色 </div>
注意
① 类选择器使用“.”(英文点号)进行标识,后面紧跟类名(自定义,我们自己命名的)。
② 可以理解为给这个标签起了一个名字,来表示。
③ 长名称或词组可以使用中横线来为选择器命名。
④ 不要使用纯数字、中文等命名,尽量使用英文字母来表示。
⑤ 命名要有意义,尽量使别人一眼就知道这个类名的目的。
⑥ 命名规范:见附件( Web 前端开发规范手册.doc)
**记忆口诀:**样式点定义,结构类调用。一个或多个,开发最常用。
代码示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.red {
width: 40px;
height: 40px;
background: red;
}
.green {
width: 40px;
height: 40px;
background: green;
}
</style>
</head>
<body>
<div class="red"></div>
<div class="green"></div>
<div class="red"></div>
</body>
</html>
类选择器-多类名
我们可以给一个标签指定多个类名,从而达到更多的选择目的。 这些类名都可以选出这个标签.
简单理解就是一个标签有多个名字.
代码示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
.red {
background: red;
}
.green {
background: green;
}
.box {
width: 40px;
height: 40px;
}
</style>
</head>
<body>
<div class="red box"></div>
<div class="green box"></div>
<div class="red box"></div>
</body>
</html>
id选择器
HTML 元素以 id 属性来设置 id 选择器,CSS 中 id 选择器以“#" 来定义
注意:id 选择器和类选择器最大的不同在于使用次数上。
id选择器让html标签只能使用一次,类选择器可以多次
代码示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
#pink {
color: pink;
}
</style>
</head>
<body>
<div id="pink"> 小韩!我爱你!</div>
</body>
</html>
通配符选择器
在 CSS 中,通配符选择器使用“*”定义,它表示选取页面中所有元素(标签)。
-
*
把html、body、div、span、li等所有的标签都改变 -
通配符选择器不需要调用, 自动就给所有的元素使用样式
-
特殊情况才使用,后面讲解使用场景(以下是清除所有的元素标签的内外边距,后期讲)
-
* { margin: 0; padding: 0; }
-
代码示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
* {
color: pink;
}
</style>
</head>
<body>
<div> 小韩!我爱你!</div>
<span>爱死你了哦!</span>
<ul>
<li>亲爱的小韩!</li>
</ul>
</body>
</html>
基础选择器总结
CSS字体属性
CSS Fonts (字体)属性用于定义字体系列、大小、粗细、和文字样式(如斜体)。
字体系列
CSS 使用 font-family 属性定义文本的字体系列。
最常见的几个字体:body {font-family: ‘Microsoft YaHei’,tahoma,arial,‘Hiragino Sans GB’; }
字体大小
CSS 使用 font-size 属性定义字体大小。
- 谷歌浏览器默认的文字大小为16px
字体粗细
CSS 使用 font-weight 属性设置文本字体的粗细。
文字样式
CSS 使用 font-style 属性设置文本的风格。
字体复合属性
字体属性可以把以上文字样式综合来写, 这样可以更节约代码:
body {
font: font-style font-weight font-size/line-height font-family;
}
- 使用 font 属性时,必须按上面语法格式中的顺序书写,不能更换顺序,并且各个属性间以空格隔开
- 不需要设置的属性可以省略(取默认值),但必须保留 font-size 和 font-family 属性,否则 font 属性将不起作用
字体属性总结
代码示例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
h2 {
/* 定义字体 */
font-family: "微软雅黑";
/* 实际开发中,我们更提倡使用数字 表示加粗或者变细 */
font-weight: 400;
/* 设置字体样式 */
font-style: italic;
}
body {
font-size: 20px;
}
.bold {
/* font-weight: bold; */
/* 这个700的 后面不跟单位,等价于bold都是加粗的效果*/
font-weight: 700;
}
em {
/* 让倾斜的字体不倾斜 */
font-style: normal;
}
div {
/* font-style: italic;
font-weight: 700;
font-size: 16px;
font-family: 'Microsoft yahei';
} */
/* 复合属性:简写的方式 节约代码 */
/* font: font-style font-weight font-size font-family */
font: italic 700 16px 'Microsoft yahei'
}
</style>
</head>
<body>
<h2>小韩自恋传</h2>
<p>小韩很可爱</p>
<p class="bold">小韩很迷人</p>
<p>小韩很温柔</p>
<p>小韩很美丽</p>
<em>我本是倾斜的字体</em>
<div>我是复合属性</div>
</body>
</html>
CSS 文本属性
文本颜色
color 属性用于定义文本的颜色
div {
color: red;
}
对齐文本
text-align 属性用于设置元素内文本内容的水平对齐方式。
div {
text-align: center;
}
装饰文本
text-decoration 属性规定添加到文本的修饰。可以给文本添加下划线、删除线、上划线等。
div {
text-decoration:underline;
}
文本缩进
text-indent 属性用来指定文本的第一行的缩进,通常是将段落的首行缩进。
div {
text-indent: 10px;
}
通过设置该属性,所有元素的第一行都可以缩进一个给定的长度,甚至该长度可以是负值。
p {
text-indent: 2em;
}
em 是一个相对单位,就是当前元素(font-size) 1 个文字的大小, 如果当前元素没有设置大小,则会按照父元
素的 1 个文字大小。
行间距
可以用工具:FastStone-Capture来准确测量 行间距
line-height 属性用于设置行间的距离(行高)。可以控制文字行与行之间的距离.
p {
line-height: 26px;
}
文本属性总结
CSS引入方式
CSS 的三种样式表
按照 CSS 样式书写的位置(或者引入的方式),CSS 样式表可以分为三大类:
-
行内样式表(行内式)
-
内部样式表(嵌入式)
-
外部样式表(链接式)
内部样式表
内部样式表(内嵌样式表)是写到html页面内部. 是将所有的 CSS 代码抽取出来,单独放到一个 标签中。
<style>
div {
color: red;
font-size: 12px;
}
</style>
-
标签理论上可以放在 HTML 文档的任何地方,但一般会放在文档的标签中
-
通过此种方式,可以方便控制当前整个页面中的元素样式设置
-
代码结构清晰,但是并没有实现结构与样式完全分离
-
使用内部样式表设定 CSS,通常也被称为嵌入式引入,这种方式是我们练习时常用的方式
行内样式表
行内样式表(内联样式表)是在元素标签内部的 style 属性中设定 CSS 样式。适合于修改简单样式.
<div style="color: red; font-size: 12px;">青春不常在,抓紧谈恋爱</div>
-
style 其实就是标签的属性
-
在双引号中间,写法要符合 CSS 规范
-
可以控制当前的标签设置样式
-
由于书写繁琐,并且没有体现出结构与样式相分离的思想,所以不推荐大量使用,只有对当前元素添加简单样式的时候,可以考虑使用
-
使用行内样式表设定 CSS,通常也被称为行内式引入
## 外部样式表
实际开发都是外部样式表. 适合于样式比较多的情况. 核心是:样式单独写到CSS 文件中,之后把CSS文件引入
到 HTML 页面中使用.
引入外部样式表分为两步:
-
新建一个后缀名为 .css 的样式文件,把所有 CSS 代码都放入此文件中。
-
在 HTML 页面中,使用标签引入这个文件。
<link rel="stylesheet" href="css文件路径">
- 使用外部样式表设定 CSS,通常也被称为外链式或链接式引入,这种方式是开发中常用的方式
CSS引入方式总结
Chrome调试工具
Chrome 浏览器提供了一个非常好用的调试工具,可以用来调试我们的 HTML 结构和 CSS 样式。
打开调试工具
打开 Chrome 浏览器,按下 F12 键或者右击页面空白处->检查。
使用调试工具
① Ctrl+滚轮 可以放大开发者工具代码大小。
② 左边是 HTML 元素结构,右边是 CSS 样式。
③ 右边 CSS 样式可以改动数值(左右箭头或者直接输入)和查看颜色。
④ Ctrl + 0 复原浏览器大小。
⑤ 如果点击元素,发现右侧没有样式引入,极有可能是类名或者样式引入错误。
⑥ 如果有样式,但是样式前面有黄色叹号提示,则是样式属性书写错误。
综合案例一
style.css
/* 这个css里面,只有样式,没有标签 */
p {
color: aqua;
}
text.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="style.css">
<style>
div {
/* 1. 给文字设置属性 */
/* color: pink; */
/* color: #9f1e45; */
color: rgb(200, 0, 0);
/* 2. 让盒子里的文字居中对齐 */
text-align: center;
/* 3. 给文本添加下划线,删除线或者上划线 */
text-decoration: underline;
/* 6.添加行间距 */
line-height: 16px;
}
a {
/* 4. 给空跳转链接去掉默认的下划线 */
text-decoration: none;
}
/* 5, 添加段落缩进 */
p {
/* text-indent: 20px; */
/* 一个em代表一个文字的距离 */
text-indent: 2em;
}
</style>
</head>
<body>
<div>小韩!我要把你变成粉色!</div>
<!-- 空链接,本来文字下面有一条线 -->
<a href="#">粉红色的回忆</a>
<p>在茫茫人海中,我们常常被生活的琐碎与平庸所困,日复一日地重复着相同的步伐,却忘记了内心深处那份对美好生活的渴望与追求。<br>觉醒,不仅仅是对外界变化的一种敏锐感知,更是对自我内心的一次深刻审视。<br>它意味着我们要从日常的麻木中挣脱出来,勇敢地面对自己的不足,积极地寻求成长与突破。<br>只有当我们真正觉醒,才能以全新的视角审视世界,发现生活中被忽视的美好,让生命焕发出不一样的光彩。
</p>
<p>我爱你</p>
<p>我爱你</p>
<p style="color: blueviolet; font-size: 20px;">我爱你</p>
<p>我爱你</p>
<p>我爱你</p>
</body>
</html>
综合案例二
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
body {
/* 复合属性 */
/* 文字大小+行高 默认字体:微软雅黑 */
font: 16px/28px 'Microsoft YaHei';
}
p {
text-indent: 2em;
}
h3 {
text-align: center;
font-weight: 400;
/* 400表示不加粗 */
}
a {
text-decoration: none;
/* 去掉空链接里面的默认下划线 */
}
.search {
color: #666;
width: 170px;
}
.btn {
font-weight: 700;
}
.footer {
color: #888888;
font-size: 12px;
}
</style>
</head>
<body>
<h3>北方高温明日达鼎盛 京津冀多地地表温度将超60℃
</h3>
<div style="color: darkgray; text-align: center; font-size: 13px;">2019-07-03 16:31:47 来源: <a href="#">中国天气网</a>
<input type="text" value="请输入查询条件" class="search"> <button class="btn">搜索</button>
</div>
<!-- 水平线 -->
<hr>
<p>中国天气网讯
今天(3日),华北、黄淮多地出现高温天气,截至下午2点,北京、天津、郑州等地气温突破35℃。预报显示,今后三天(3-5日),这一带的高温天气将继续发酵,高温范围以及强度将在4日达到鼎盛,预计北京、天津、石家庄、济南等地明天的最高气温有望突破38℃,其中北京和石家庄的最高气温还有望创今年以来的新高。
</p>
<h4>气温41.4℃!地温66.5!北京强势迎七月首个高温日</h4>
<p>今天,华北、黄淮一带的高温持续发酵,截至今天下午2点,陕西北部、山西西南部、河北南部、北京、天津、山东西部、河南北部最高气温已普遍超过35℃。大城市中,北京、天津、郑州均迎来高温日。
</p>
<p style="text-align: center;">
<img src="R-C.jpg" width="200" height="200" />
</p>
<p>在阳光暴晒下,地表温度也逐渐走高。今天下午2点,华北黄淮大部地区的地表温度都在50℃以上,部分地区地表温度甚至超过60℃。其中,河北衡水地表温度高达68.3℃,天津站和北京站附近的地表温度分别高达66.6℃和66.5℃。
</p>
<div style="font-weight: 700;">明日热度再升级!京津冀携手冲击38℃+</div>
<p>中国天气网气象分析师王伟跃介绍,明天(4日),华北、黄淮地区35℃以上的高温天气还将继续升级,并进入鼎盛阶段,高温强度和范围都将发展到最强。
明天,北京南部、天津大部、河北中部和南部、山东中部和西部、山西南部局地、河南北部、东北部分地区的最高气温都将达到或超过35℃。
</p>
<p>不过,专家提醒,济南被雨水天气完美绕开,因此未来一周,当地的高温还会天天上岗。在此提醒当地居民注意防暑降温,防范持续高温带来的各种不利影响。(文/张慧 数据支持/王伟跃 胡啸 审核/刘文静 张方丽)
</p>
<div class="footer"">本文来源:中国天气网 责任编辑:刘京_NO5631</div>
</body>
</html>