一、HTML、CSS系列之导学
1. 拨云见日
- HTML、CSS→基础
- 切图流程→传统切图,智能切图,公司流行切图方式
- 实战阶段:PC企业站布局 PC游戏站布局
2、溯本求源
- 扩展HTML与扩展CSS
- HTML5新语法 CSS3新语法
- 不同浏览器的兼容与hack(解决方案)
3、风生水起
- 布局:弹性布局、网格布局、移动端布局
- 响应式布局(基于)→Bootstrap
4、巧夺天工
- 预编译CSS
- postcss
- CSS架构
- 高级功能
- CSS与JS交互
二、什么是HTML、CSS
是两种编程语言,一般情况下需要配合使用,是作为网站开发的基础语言。
例(以淘宝源代码为例):
上为HTML代码
下为CSS代码(包含后面一大串,在<style>
与</style>
里的)
- 每一个网页→ .html文件
- 每一个内容→ .mp4 文件
如何创建文件:
- 先新建一个文本文档(.txt文件)
- 重命名为.html:
- hello world演示:
三、VSCode编辑器
- 安装插件:语言包,open/view in browser
- 编辑器的基本使用:
- 保存:
↑未保存状态
↑保存状态
快捷键:
- ctrl+s:保存
- ctrl +a:全选
- ctrl+x/ctrl+c/ctrl+v:剪切、复制、粘贴
- ctrl+z/ctrl+y:撤销、前进
- shift+end:从头选中一行
- shift+home:从尾部选中一行
- shift+alt+↓:快速复制一行
- alt+↑或↓:快速移动一行
- tab:向后缩进
- tab+shift:向前缩进
- alt+鼠标左键:多光标
- ctrl+d:选择相同元素的下一个
四、深入了解网站开发
- UI设计师:设计稿
- web前端开发工程师(H5开发)
设计稿→代码
数据库里的数据→显示到页面
HTML+CSS
HTML:结构
CSS:样式
JavaScript:行为 - web后端开发工程师
五web核心三剑客
HTML
CSS
JavaScript
视频中演示代码:
<style>
div{ color:red; font-style:italic; }
</style>
<div>HTML+CSS系列教程</div>
<script>
let div = document.querySelector('div');
let timer = null;
let flag = true;
div.onmouseover = function(){
timer = setInterval(()=>{
if(flag){
div.style.color = 'blue';
div.style.fontStyle = 'normal';
}
else{
div.style.color = 'red';
div.style.fontStyle = 'italic';
}
flag = !flag;
},500);
};
div.onmouseout = function(){
clearInterval(timer);
};
</script>
演示成果:
HTML代码成果
六、HTML基本结构和属性
- HTML:超文本 标记 语言
超文本:文本内容+非文本内容(图片、视频、音频等)
标记:<单词>
语言:编程语言
标记也叫做标签:
<header>
<footer>
写法分成两种:
单标签:<header>
双标签:<header></header>
创建标签的快捷键:单词+tab键→<单词>
标签是可以上下排列,也可以组合嵌套。
标签的属性:来修饰标签的,设置当前标签的一些功能。
<标签 属性=“值” 属性2=“值2”>
视频中演示代码:
<header title="hello">hello world</header>
<footer title="hi">hi HTML</footer>
七、HTML初始代码
快捷键:!+tab键
<!DOCTYPE html>
文档声明:告诉浏览器这是一个html文件
<html lang="en">
html文件的最外层标签:包裹着所有html标签代码
<meta charset="UTF-8">
元信息:是编写网页中的一些赋值信息
- HTML注释:
<!--注释的内容-->
在浏览器中看不到。只能在代码中看到注释的内容
意义:
- 把暂时不用的代码注释起来,方便以后使用。
- 对研发人员进行提示
- 快捷添加注释与删除注释:
- ctrl+/
- shift+alt+a
八、HTML语义化
指根据网页中内容和的结构,选择适合的HTML标签进行编写
好处:
- 在没有CSS的情况下,页面也能呈现出很好的内容结构
- 有利于SEO,让搜索引擎爬虫更好的理解网页
- 方便其他设备解析(如屏幕阅读器、盲人阅读器等)
- 便于团队开发与维护
九、标题与段落
标题→双标签:<h1></h1>...<h6></h6>
在一个网页中,h1标题最重要,并且一个.html文件中只能出现一次h1标签
h5,h6标签在网页中不经常使用
段落→双标签:<p></p>
-
文本修饰标签
强调→双标签:<strong></strong>或<em></em>
会对文本进行加粗或斜体
下标:<sub></sub>
上标:<sup></sup>
例如:a<sup>2</sup>+b<sup>2</sup>=c<sup>2</sup>
删除:<del></del>
插入:<ins></ins>
-
图片标签与图片属性
<img>
(单标签)
引入图片的地址:<src>
当图片出现问题的时候,可以显示一段有好的文字:<alt>
(优先级比src低)
提示信息:<title>
控制图片大小:<width> <height>
(可固定空间)
十、引入文件的地址路径
- 相对路径:
. 在路径中表示当前路径
… 在路径中表示上一级路径 - 绝对路径:
例如:http://cms-bucket.ws.126.net/2019/04/16/7a5b31e0ce5474a7515.jpeg
图例:
注意:除网页地址外,引入时斜线和反斜线都可,但还是尽量避免写反斜线
十一、跳转链接、跳转锚点、特殊符号
1.跳转链接
链接标签:
a→双标签 <a></a>
href属性:链接的地址
图例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<a href="http://www.baidu.com"target="_blank">访问百度</a>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<a href="http://www.baidu.com"target="_blank">访问百度
<a href="http://www.qfedu.com">
<img src="./22270319尉轩.jpg">
</a>
</body>
</html>
target属性:可以改变链接打开的方式,默认情况下:在当前页面打开: _self 新窗口打开: _blank
代码:<a href="http://www.baidu.com"target="_blank">访问百度
<base>标签:改变<a>标签的一个行为
视频中小练习:
index:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<a href="./html/list.html">列表页</a>
<img src="./images/QQ图片20220512200011.png"alt="">
</body>
</html>
list:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<a href="./detail.html">详情页</a>
<img src="../images/QQ图片20220512200023.png"alt="">
</body>
</html>
detail:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<a href="../index.html">返回首页</a>
<img src="../images/QQ图片20220512200033.jpg"alt="">
</body>
</html>
2.跳转锚点
- 实现一:#号+id属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- <a href="#html">HTML</a>
<a href="#css">CSS</a>
<a href="#JavaScript">JavaScript</a>
<h2 id="html">HTML超文本标记语言</h2>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<h2 id="css">CSS层叠样式表</h2>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<h2 id="JavaScript">JS脚本</h2>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p> -->
<a href="#html">HTML</a>
<a href="#css">CSS</a>
<a href="#JavaScript">JavaScript</a>
<a name="html"></a>
<h2>HTML超文本标记语言</h2>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<a name="css"></a>
<h2>CSS层叠样式表</h2>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<a name="JavaScript"></a>
<h2>JS脚本</h2>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
<p>模拟的段落</p>
</body>
</html>
刷新页面,三个按键点击后,自动跳转到对应位置
- 实现二:#号+name属性
<a name="html"></a>
3.特殊符号
- 特殊字符 —— 含义 —— 特殊字符代码
空格符
© 版权 ©
注册商标 ®
< 小于号 <
> 大于号 >
& 和号 &
¥ 人民币 ¥
℃ 摄氏度 °
十二、无序列表、有序列表、定义列表、嵌套列表
1.无序列表
<ul>、<li>
:列表的最外层容器、列表项
注:ul和li必须是组合出现的,他们之间是不能有其它标签的
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<!-- 正确的写法
<ul>
<li>第一项</li>
<li>第二项</li>
</ul> -->
<!-- 错误的写法
<ul>
<p>
<li>第一项</li>
</p>
</ul> -->
</body>
</html> ```
- type属性:改变前面标记的样式(一般都是用CSS去控制)
正确的写法
<ul type="circle">
<li>第一项</li>
<li>第二项</li>
</ul>
```
## 2.有序列表
- `<ol>、<li>`:列表的最外层容器、列表项
注:有序列表用的非常少,经常用的是无序列表,无序列表可以去代替有序列表
- 同样有type属性
## 3.定义列表
<dl>:定义列表
<dt>:定义专业术语或名词
<dd>:对名词进行解释和描述
4.嵌套列表
列表之间可以互相嵌套形成多层级列表