1.初识HTML
Hyper Text Markup Language(超文本标记语言)
超文本包括:文字、图片、音频、视频、动画等
W3C
- World Wide Web Consortium (万维网联盟)。
- 成立于1994年,Web技术领域最权威和具影响力的国际中立性技术标准机构。
- http://www.w3.org/
- http://www.chinaw3c.org/
W3C标准包括
- 结构化标准语言(HTML、 XML)
- 表现标准语言(CSS)
- 行为标准(DOM、ECMAScript )
2.HTML基本结构
<body>、</body> 等成对的标签,分别叫开放标签和闭合标签。
单独呈现的标签(空元素),如<hr/> ;意为用/来关闭空元素。
<!--DOCTYPE:告诉浏览器,我们要使用什么规范-->
<!DOCTYPE html>
<html lang="en">
<!--head标签代表网页头部-->
<head>
<!--meta描述性标签,它用来描述我们网站的一些信息-->
<!--meta一般用来做SEO-->
<meta name="keywords" content="个人博客">
<meta name="description" content="分享学习内容">
<meta charset="UTF-8">
<!--title网页标题-->
<title>我的第一个网页</title>
</head>
<!--body标签代表网页主体-->
<body>
Hello,world!
</body>
</html>
3.网页基本标签
标题标签 | <h1></h1>~<h6></h6> |
段落标签 | <p></p> |
换行标签 | <br/> |
字体样式标签 | 加粗:<strong></strong> 斜体:<em></em> |
注释和特殊符号 | 注释:<!-- --> 版权所有:© 空格: |
4.图像标签
常见的图像格式:
- JPG
- GIF
- PNG
- BMP
src :图像地址(相对地址、绝对地址)
../ 上一级目录
5.超链接标签
按形式分:
- 文本超链接
- 图像超链接
按功能分:
- 页面间链接(从一个页面链接到另一个页面)
- 锚链接(一般用于跳到页面的某个地方,比如首部或底部)
- 功能性链接(邮件链接:mailto)
<!-- a标签
href:必填,表示跳转到哪个页面
target:表示窗口在哪里打开
_blank 在新标签中打开
_self 在自己的网页中打开-->
<a href="1.我的第一个网页.html" target="_blank">点击跳转到页面一</a>
<a href="https://www.baidu.com" target="_self">点击跳转到百度</a>
<br>
<a href="1.我的第一个网页.html">
<img src="../resources/images/1.jpg" alt="渗透测试工程师" title="ydh" width="300"
height="300">
</a>
<!--使用name作为标记-->
<a name="top">顶部</a>
<!--锚链接
1.需要一个锚标记
2.跳转到标记-->
<a href="#top">回到顶部</a>
<!--功能性链接
邮件链接:mailto-->
<a href="mailto:623651791@qq.com">点击联系我</a>
<a target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=&site=qq&menu=yes">
<img border="0" src="http://wpa.qq.com/pa?p=2::53" alt="你好,加我有彩蛋哦" title="你好,
加我有彩蛋哦"/>
</a>
6.块元素和行内元素
块元素
- 无论内容多少,该元素独占一行
- h1-h6,p
行内元素
- 内容撑开宽度,左右都是行内元素的可以排在一行
- a,strong,em
7.列表标签
列表就是信息资源的一种展示形式。它可以使信息结构化和条理化,并以列表的样式显示出来,以便浏览者能更快捷地获得相应的信息。
列表的分类
- 无序列表
- 有序列表
- 定义列表
<!--有序列表
应用范围:试卷,问答...-->
<ol>
<li>Java</li>
<li>Python</li>
<li>C/C++</li>
</ol>
<hr>
<!--无序列表
应用范围:导航,侧边栏...-->
<ul>
<li>Java</li>
<li>Python</li>
<li>C/C++</li>
</ul>
<!--自定义列表
dl:标签
dt:列表名称
dd:列表内容
应用范围:公司网站底部-->
<dl>
<dt>学科</dt>
<dd>Java</dd>
<dd>Python</dd>
<dd>C/C++</dd>
8.表格标签
基本结构
- 行
- 列
- 单元格
- 跨行
- 跨列
<!--demo-->
<table border="1px">
<tr>
<!--colspan 跨列,注意删除多余的单元格-->
<td colspan="3">学生成绩</td>
</tr>
<tr>
<!--rowspan 跨行,注意删除多余的单元格-->
<td rowspan="2">狂神</td>
<td>语文</td>
<td>100</td>
</tr>
<tr>
<td>数学</td>
<td>100</td>
</tr>
<tr>
<td rowspan="2">秦疆</td>
<td>物理</td>
<td>95</td>
</tr>
<tr>
<td>化学</td>
<td>95</td>
</tr>
</table>
9.视频和音频
视频元素
- video
音频元素
- audio
<!--音频和视频
src:资源路径
controls:控制条
autoplay:自动播放-->
<video src="../resources/video/上网原理.mp4" controls autoplay></video>
<audio src="../resources/audio/土耳其进行曲-莫扎特-47.mp3" controls autoplay></audio>
10.页面结构分析
<header>
<h2>网页头部</h2>
</header>
<section><h2>网页主题</h2></section>
<footer>
<h2>网页底部</h2>
</footer>
11.iframe内联框架
内联框架用于向当前页面中引入一个其他页面。
内联框架里的网页不会被搜索引擎所检索,一般情况下很少使用内联框架。
<iframe src="" name="w3school" frameborder="0"></iframe>
<a href="https://www.w3school.com.cn" target="w3school">点击跳转w3school</a>
<iframe src="https://www.w3school.com.cn" frameborder="0" width="1000px" height="1000px"></iframe>
12.表单
常见表单元素:
- 文本输入框
- 密码框
- 单选框
- 多选框
- 按钮
- 下拉框
- 文本域
- 文件域
- 简单验证(邮箱、URL、数字)
- 滑块
- 搜索框
- 提交和重置
表单属性:
<h1>注册</h1>
<!--表单form
action:表单提交的位置,可以是网站,也可以是一个请求处理地址
method:post,get提交方式
post:比较安全,传输大文件
get:不安全(可以在url中看到提交的信息),高效
-->
<form action="1.我的第一个网页.html" method="get">
<!--文本输入框:input type="text"
value="输入用户名" 默认初始值
maxlength="8" 最长能输入几个字符
size="30" 文本框的长度
-->
<p>名字:<input type="text" name="username" ></p>
<!--密码框:input type="password"-->
<p>密码:<input type="password" name="pwd"></p>
<!--单选框:input type="radio"
value:单选框的值
name:表示组,传递数据的名称-->
<p>性别:
<input type="radio" value="boy" name="sex" checked>男
<input type="radio" value="girl" name="sex">女
</p>
<!--多选框
input type="checkbox"-->
<p>爱好:
<input type="checkbox" value="game" name="hobby">游戏
<input type="checkbox" value="sports" name="hobby">运动
<input type="checkbox" value="chat" name="hobby">聊天
<input type="checkbox" value="code" name="hobby" checked>敲代码
</p>
<!--按钮
input type="button" 普通按钮
input type="image" 图像按钮(点击图像就提交数据了)
input type="submit" 提交按钮
input type="reset" 重置按钮
-->
<p>按钮:
<input type="button" name="btn1" value="点击变长">
<input type="image" src="../resources/images/1.jpg">
</p>
<!--下拉框,列表框-->
<p>国家:
<select name="country">
<option value="China" selected>中国</option>
<option value="USA">美国</option>
<option value="India">印度</option>
<option value="Thailand">泰国</option>
</select>
</p>
<!--文本域-->
<p>反馈:
<textarea name="textarea" cols="30" rows="10">文本内容</textarea>
</p>
<!--文件域-->
<p>
<input type="file" name="files">
<input type="button" name="upload" value="上传文件">
</p>
<!--邮箱验证
URL
数字-->
<p>邮箱验证:
<input type="email" name="email">
</p>
<p>URL:
<input type="URL" name="URL">
</p>
<p>商品数量:
<input type="number" name="number" min="0" max="100" step="1">
</p>
<!--滑块-->
<p>音量:
<input type="range" name="voice" min="0" max="100" step="5">
</p>
<!--搜索框-->
<p>搜索:
<input type="search" name="search">
</p>
<!--提交和重置-->
<p>
<input type="submit" value="提交表单">
<input type="reset" value="清空表单">
</p>
</form>
提交表单数据的两种方式:
post:
get:
可见post比get安全
表单的应用:
- 只读readonly
- 隐藏域hidden
- 禁用disabled
<form action="1.我的第一个网页.html" method="get">
<!--只读readonly-->
<p>用户名:
<input type="text" name="username" value="admin" readonly>
</p>
<!--隐藏域hidden-->
<p>密码:
<input type="password" name="pwd" value="123456" hidden>
</p>
<!--增强鼠标可用性-->
<!--点击“你点我试试”,光标跳转到文本域的最前面-->
<label for="mark">你点我试试</label>
<textarea name="textarea" id="mark" cols="10" rows="5">文本内容</textarea>
<!--禁用disabled-->
<p>
<input type="submit" value="提交表单">
<input type="reset" value="重置表单" disabled>
</p>
</form>
密码框虽然被隐藏了,但是由于设置了value初始值,提交表单时能有密码数据
表单初级验证常用方式:
- placeholder提示信息
- required非空判断
- pattern正则表达式
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件(例如sed和grep)普及开的。正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。
<form action="1.我的第一个网页.html" method="get">
<!--placeholder 提示信息
required 非空判断-->
<p>用户名:
<input type="text" name="username" placeholder="请输入用户名" required>
</p>
<!--pattern 正则表达式
https://tool.oschina.net/uploads/apidocs/jquery/regexp.html
-->
<p>自定义邮箱:
<input type="email" name="diymail" pattern="/^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-
z\.]{2,6})$//^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/">
</p>
<p>
<input type="submit" value="提交表单">
</p>
</form>