视频地址:HTML5完整教学通俗易懂
1、什么是HTML
- Hyper Text Markup Language(超文本标记语言)
- 超文本包括:文字、图片、音频、视频、动画等
2、HTML5的优势
-
世界知名浏览器厂商对HTML5的支持
- 微软
- 苹果
- Opera
- Mozilla
-
市场的需求
-
跨平台
3、W3C标准
- W3C
- World Wide Web Consortium(万维网联盟)
- 成立于1994年,Web技术领域最权威和具影响力的国际中立性技术标准机构
- http://www.w3.org/
- http://www.chinaw3c.org/
- w3C标准包括
- 结构化标准语言(HTML、XML)
- 表现标准语言(CSS)
- 行为标准(DOM、ECMAScript )
4、HTML基本结构
<body>
、</body>
等成对的标签,分别叫开放标签和闭合标签;单独呈现的标签(空元素),如
<hr/>
,意为用/来关闭空元素
5、网页基本标签
- 标题标签
- 段落标签
- 换行标签
- 水平线标签
- 字体样式标签
- 注释和特殊符号
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>基本标签学习</title>
</head>
<body>
<!--标题标签-->
<h1>一级标签</h1>
<h2>二级标签</h2>
<h3>三级标签</h3>
<h4>四级标签</h4>
<h5>五级标签</h5>
<h6>六级标签</h6>
<!--段落标签-->
<p>跑得快 跑得快</p>
<p>一只没有耳朵 一只没有尾巴</p>
<p>真奇怪 真奇怪</P>
<p>两只老虎 两只老虎</p>
<p>跑得快 跑得快</p>
<p>一只没有耳朵 一只没有尾巴</p>
<p>真奇怪 真奇怪</p>
<!--水平线标签-->
<hr/>
<!--换行标签-->
跑得快 跑得快 <br/>
一只没有耳朵 一只没有尾巴 <br/>
<h1>字体样式标签</h1>
粗体:<strong>i love you</strong>
斜体:<em>i love you</em>
<br/>
<!--特殊字符-->
空 格
空 格
<br/>
>大于号 <br/>
<小于号 <br/>
©版权所有符号 <br/>
</body>
</html>
6、图像标签
- 常见的图像格式
- JPG
- GIF
- PNG
- BMP
<body>
<!--
img学习
src :图片地址(必填)
相对地址(推荐使用),绝对地址
../ 回到上一级目录
alt :图片名字(必填)
-->
<img src="../resources/image/1.png" alt="图像学习" title="图像" height="300" width="300">
</body>
7、链接标签
-
文本超链接
-
图像超链接
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>链接标签学习</title>
</head>
<body>
<!--使用name作为锚点标记-->
<a name="top">顶部</a>
<!--
a标签
href :必填,表示要跳转到那个页面
target:表示窗口在哪里打开
_blank:在新标签中打开
_self:在自己的网页中打开
-->
<a href="https://www.baidu.com/" target="_blank">跳转到百度</a><br/>
<!--图像跳转-->
<a href="1.我的第一个网页.html">
<img src="../resources/image/1.png" alt="图像学习" title="图像" height="300" width="300">
</a>
</body>
</html>
<!--
锚链接
1。需要一个锚标记
2。跳转到标记 #
-->
<br/>
<a href="#top">跳转到顶部</a><br/>
<!--
功能性链接
邮件链接:mailto
QQ链接
-->
<a href="mailto:11qq@qq.com">邮件</a>
<a target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=1192589455&site=qq&menu=yes">
<img border="0" src="http://wpa.qq.com/pa?p=2:1192589455:53" alt="都是大公司梵蒂冈" title="都是大公司梵蒂冈"/>
</a>
8、行内元素和块元素
- 块元素
- 无论内容多少,该元素独占一行
- 如(p、h1-h6…)
- 行内元素
- 内容撑开宽度,左右都是行内元素的可以在排在一行
- 如( a . strong . em …)
9、列表
- 什么是列表
- 列表就是信息资源的一种展示形式。它可以使信息结构化和条理化,并以列表的样式显示出来,以便浏览者能更快捷地获得相应的信息
- 列表的分类
- 无序列表
- 有序列表
- 自定义列表
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>列表</title>
</head>
<body>
<!--有序列表-->
<ol>
<li>Java</li>
<li>Python</li>
<li>运维</li>
<li>前端</li>
<li>c/c++</li>
</ol>
<hr/>
<!--无序列表-->
<ul>
<li>Java</li>
<li>Python</li>
<li>运维</li>
<li>前端</li>
<li>c/c++</li>
</ul>
<hr/>
<!--自定义列表dl :标签
dt :列表名称dd :列表内容)-->
<dl>
<dt>学科</dt>
<dd>Java</dd>
<dd>Python</dd>
<dd>Linux</dd>
<dd>C</dd>
<dt>位置</dt>
<dd>西安</dd>
<dd>重庆</dd>
<dd>新疆</dd>
</dl>
</body>
</html>
10、表格
- 为什么使用表格
- 简单通用
- 结构稳定
- 基本结构
- 单元格
- 行
- 列
- 跨行
- 跨列
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表格</title>
</head>
<body>
<!--表格table
行 tr table row
单元格(列) td table data cell
border:边界
colspan:跨列
-->
<table border="1px">
<tr>
<td colspan="4">1-1</td>
<!--<td>1-2</td>
<td>1-3</td>
<td>1-4</td>-->
</tr>
<tr>
<td rowspan="2">2-1</td>
<td>2-2</td>
<td>2-3</td>
<td>2-4</td>
</tr>
<tr>
<td>3-1</td>
<td>3-2</td>
<td>3-3</td>
<td>3-4</td>
</tr>
</table>
</body>
</html>
11、视频和音频
视频元素:video
音频元素:audio
<body>
<!--
音频和视频
src :资源路径
controls :控制条
autoplay : 自动播放
-->
<!--<video src="../resources/video/1.mp4" controls autoplay></video>-->
<audio src="../resources/audio/新冠肺炎防控广播稿.mp3" controls autoplay></audio>
</body>
12、页面结构分析
元素名 | 描述 |
---|---|
header | 标题头部区域的内容(用于页面或页面中的一块区域) |
footer | 标记脚部区域的内容(用于整个页面或页面的一块区域) |
section | Web页面中的一块独立区域 |
article | 独立的文章内容 |
aside | 相关内容或应用(常用于侧边栏) |
nav | 导航类辅助内容 |
<body>
<header>
<h2>网页头部</h2>
</header>
<section>
<h2>网页主体</h2>
</section>
<footer>
<h2>网页脚部</h2>
</footer>
</body>
13、iframe内联框架
<body>
<!--<iframe src="https://www.runoob.com/" frameborder="0" width="1000px" height="800px"></iframe>-->
<iframe src="" name="菜鸟" frameborder="0" width="1000px" height="800px"></iframe>
<a href="https://www.runoob.com/" target="菜鸟">点击跳转</a>
<!--<iframe src="//player.bilibili.com/player.html?aid=55631961&bvid=BV1x4411V75C&cid=97257967&page=11"
scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true">
</iframe>-->
</body>
14、表单语法
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登陆注册</title>
</head>
<body>
<h1>注册</h1>
<!--
表单form:
action : 表单提交的位置,可以是网站,也可以是一个请求处理地址
method : 提交方式
post:不会看到提交信息,安全,也可以传输大文件
get:可以在url中看到提交的信息,不安全,但高效
-->
<form action="1.我的第一个网页.html" method="get">
<!--文本输入框 type="text"-->
<p>名字:<input type="text" name="username"></p>
<!--密码框 type="password"-->
<p>密码:<input type="password" name="pwd"></p>
<p>
<input type="submit"> <!--提交-->
<input type="reset"> <!--重置-->
</p>
</form>
</body>
</html>
说明:
- method为get时,会在url中显示提交信息,不安全
- input type=“password”,则在web输入密码时会不会明文显示,而是以
*
或者.
表示
改用post方式提交后,url中不再显示提交信息:
但在网页检查以后,仍可看到:
更进一步改进方式后续会有。
15、表单元素格式
value:web登陆时输入框中的默认值
<p>名字:<input type="text" name="username" value="人人" maxlength="8" size="30"></p>
单选按钮:radio:type=“radio”
<p>性别:
<input type="radio" value="boy" name="sex" checked/>男 <!--默认勾选-->
<input type="radio" value="girl" name="sex"/>女
</p>
当有单选按钮时,必须有value值,选中哪个跳转以后就url中就会显示 name=value
两个name=sex,表示是在同一个组,这样才能只选择男或女
如果两个name不相同,则男女可以同时选。
复选按钮:checkbox
<p>爱好:
<input type="checkbox" value="sleep" name="hobby"/>睡觉
<input type="checkbox" value="code" name="hobby"/>代码
<input type="checkbox" value="chat" name="hobby" checked/>聊天
<input type="checkbox" value="game" name="hobby"/>游戏
</p>
效果:
其他按钮:
-
button:自定义的按钮,没有写效果,所以点击跳转不过去
-
image:图片做按钮,点击图片可以实现跳转
-
submit:提交按钮
-
reset:重置按钮,用来清空表单
<p>按钮:
<input type="button" value="点击" name="btn1"/>
<input type="image" src="../resources/image/1.png">
</p>
下拉框,列表框:select
<p>下拉框:
<select name="列表名称">
<option value="china">中国</option>
<option value="india">印度</option>
<option value="Netherlands" selected>荷兰</option> <!--不写selected则默认是第一个-->
<option value="Switzerland">瑞士</option>
</select>
</p>
效果如下:
文本域:
<p>反馈:
<textarea name="textarea" cols="50" rows="10">文本内容</textarea>
</p>
效果:
文件域:
<p>
<input type="file" name="files"> <!--name是必须有的,否则不成功-->
<input type="button" name="upload" value="上传">
</p>
验证:
<p>邮箱:
<input type="email" name="邮箱"/>
</p>
<p>URL:
<input type="url" name="网址"/>
</p>
<p>数字:
<input type="number" name="数字" min="2" max="100" step="2"/>
</p>
效果:
滑块:
<p>音量:
<input type="range" name="音量" min="0" max="100">
</p>
如图,滑动音量的滑块以后,跳转以后url中会携带“音量=35”。
应用:
(1)只读 readonly
<p>名字:<input type="text" name="username" value="人人" readonly></p>
效果:此时可以看到文本框里“人人”,但是不允许修改
(2)禁用 disabled
<p>
<input type="submit" disabled> <!--提交-->
<input type="reset"> <!--重置-->
</p>
效果:提交按钮会变灰
(3)隐藏 hidden
<!--给密码设定默认值123456,并隐藏掉-->
<p>密码:<input type="password" name="pwd" hidden value="123456"></p>
效果:
点击提交跳转以后url中会带上 pwd=123456
(4) 增强鼠标可用性 label
<p>
<!--增强鼠标可用性-->
<label for="mark">你点我试试</label>
<input type="text" id="mark">
</p>
效果:在鼠标点击到“你点我试试”时,会自动进入到后面的文本框内。
16、表单初级验证
为什么进行表单验证:
- 安全
- 减轻压力,避免错误的信息也被提交上去
(1)提示信息 placeholder
<p>名字:<input type="text" name="username" placeholder="请输入姓名"></p>
效果:
(2)非空判断 required
<p>名字:<input type="text" name="username" placeholder="请输入姓名" required></p>
效果:如果不输入姓名则无法跳转
(3)自定义规则 pattern
<!--常用正则表达式:https://www.jb51.net/tools/regexsc.htm-->
<p>自定义邮箱:
<input type="text" name="diyemail" pattern="/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$//^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/或\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">
</p>