HTML
一:初识HTML
什么时HTML?
Hyper Text Markup Language (超文本标记语言)
Hyper /?ha?p?(r)/亢奋的,高度紧张的 Markup /?mɑ? k? p/ 标记
超文本包括:文字、图片、音频、视频、动画等
W3C ?
World Wide Web Consortium (万维网联盟)
W3C标准包括:*
结构标准语言(XHTML、XML)
表现标准语言(CSS)
行为标准(DOM、ECMAScript)
HTML基本结构:
<html>
<!--网页头部-->
<head>
<title>我的第一个网页</title>
</head>
<!--主体部分-->
<body>
我的第一个网页
</body>
</html>
<body></body> <!--成对的标签,分别叫 开放标签 和 闭合标签-->
<hr/> <!--单独呈现的标签(空元素),意为用 / 来关闭空元素-->
<!DOCTYPE html> <!--DOCTYPE:告诉浏览器,我们要使用什么规范-->
<html lang="en"> <!--总标签-->
<head> <!--head标签代表网页头部-->
<!--meta描述性标签,它用来描述我们网站的一些信息-->
<!--meta一般用来做SEO-->
<meta charset="UTF-8">
<meta name="keywords" content="学习前端">
<meta name="description" content="html基础学习">
<title>我的第一个网页</title> <!--title标签代表网页标题-->
</head>
<body> <!--body标签代表网页主体-->
</body>
</html>
二:网页基本标签
标题标签
<!--标题标签-->
<h1>一级标签</h1>
<h2>二级标签</h2>
<h3>三级标签</h3>
<h4>四级标签</h4>
<h5>五级标签</h5>
<h6>六级标签</h6>
段落标签
<!--段落标签-->
<p>两只老虎,跑得快。</p>
<p> 跑得快。</p>
<p> 跑得快。</p>
换行标签
<!--换行标签,自闭合标签-->
两只老虎跑的快<br/>
跑得快<br/>
跑得快<br/>
水平线标签
<!--水平线标签-->
<hr/>
字体样式标签
<!--字体样式标签-->
<!--粗体,斜体-->
<strong>粗体</strong>
<em>斜体</em>
注释和特殊符号
<!--字体样式标签-->
<!--粗体,斜体-->
<strong>粗体</strong>
<em>斜体</em>
<!--特殊符号-->
<!--空格: -->
空格 空格
<!--大于号:> -->
<!--小于号:< -->
<!--版权符号?:© -->
版权所有©
<!--特殊符号记忆方式:
先输入&
再输入任意字母,例如a
即可看到对应符号
分号;结束
-->
整体:
<!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>
<!--换行标签,自闭合标签-->
两只老虎跑的快<br/>
跑得快<br/>
跑得快<br/>
<!--水平线标签-->
<hr/>
<!--字体样式标签-->
<!--粗体,斜体-->
<strong>粗体</strong>
<em>斜体</em>
<!--特殊符号-->
<!--空格: -->
空格 空格
<!--大于号:> -->
<!--小于号:< -->
<!--版权符号?:© -->
版权所有©
<!--特殊符号记忆方式:
先输入&
再输入任意字母,例如a
即可看到对应符号
分号;结束
-->
</body>
</html>
三:图像、超链接、网页布局
图像标签
常见的图像格式:
JPG、GIF、PNG、BMP(位图)...
<img src"path" alt="text" title="text" width="x" height="y"/>
src:图像地址
alt:图像的替代文字(当图片文件不存在时)
title:鼠标悬停提示文字
width:图像宽度
height:图像高度
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图像标签</title>
</head>
<body>
<!--
src:图片地址(必填)
分为:绝对路径,相对路径(推荐)
../ 上一级目录
alt:图片名字(必填)
-->
<img src="../resources/imags/264933.jpg" alt="小太阳" title="小太阳" width="1920px" height="1080px">
</body>
</html>
链接标签
<a href="path" target="目标窗口位置">链接文本或图像(可以将图片标签嵌入进来)</a>
href:链接路径
target:链接在哪个窗口打开
目标窗口位置:常用值:_self、_blank
页面间链接
从一个页面链接到另一个页面
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>链接标签</title>
</head>
<body>
<!--a标签:
href:必填,表示要跳转到哪个页面
target:表示窗口在哪里打开
_blank: 在新标签页打开 blank /bl??k/ 空白的
_self:在当前页面打开
-->
<a href="html02.html">点击跳转</a>
<a href="https://www.baidu.com">点击跳转到百度</a>
<br/>
<!--图片超链接-->
<a href="html04.html">
<img src="../resources/imags/264933.jpg" alt="小太阳">
</a>
</body>
</html>
锚链接
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>链接标签</title>
</head>
<body>
<!--锚标记-->
<a name="top">顶部</a>
<p>
<img src="../resources/imags/264933.jpg" alt="小太阳" title="小太阳" width="500px" height="500px">
</p>
<p>
<img src="../resources/imags/264933.jpg" alt="小太阳" title="小太阳" width="500px" height="500px">
</p>
<p>
<img src="../resources/imags/264933.jpg" alt="小太阳" title="小太阳" width="500px" height="500px">
</p>
<p>
<img src="../resources/imags/264933.jpg" alt="小太阳" title="小太阳" width="500px" height="500px">
</p>
<p>
<img src="../resources/imags/264933.jpg" alt="小太阳" title="小太阳" width="500px" height="500px">
</p>
<p>
<img src="../resources/imags/264933.jpg" alt="小太阳" title="小太阳" width="500px" height="500px">
</p>
<!--锚链接(返回到顶部)
1.需要一个锚标记
<a name="top">顶部</a>
2.跳转到标记
href="#:通过井号跳转到标记"
-->
<a href="#top">回到顶部</a>
<!--跳转到其他页面的标记处-->
<a href="html03.html#down">跳转到html03.html页面的down标记处</a>
</body>
</html>
功能性链接
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>链接标签</title>
</head>
<body>
<!--功能性链接
邮件链接:href="mailto:邮件地址"
QQ链接:搜索QQ推广,登录,推广工具
-->
<!--邮件链接-->
<a href="mailto:ssh2613@163.com">点击联系我</a>
<!--QQ推广链接-->
<a target="_blank" href="http://wpa.qq.com/msgrd?v=3&uin=&site=qq&menu=yes"><img border="0" src="../resources/imags/counseling_style_53.png" alt="你好,加我。领取小电影!" title="你好,加我。领取小电影!"/></a>
</body>
</html>
行内元素和块元素
块元素
无论内容多少,该元素独占一行
行内元素
内容撑开宽度,左右都是行内元素的可以排在一行
四:列表、表格、媒体元素
列表
什么是列表?
列表就是信息资源的一种展示形式,它可以使信息结构化和条理化,并以列表的样式展示出来,以便浏览者更快捷的获得相应的信息
列表分类:
l 代表list:列表
无序列表
<!--无序列表
应用范围:导航,侧边栏
-->
<ul>
<li>java</li>
<li>c</li>
<li>c++</li>
<li>python</li>
</ul>
有序列表
<!--有序列表
应用范围:试卷,问答
-->
<ol>
<li>java</li>
<li>c</li>
<li>c++</li>
<li>python</li>
</ol>
自定义列表
<!--自定义列表
dl:标签
dt:列表名称
dd:列表内容
应用范围:公司网页底部
-->
<dl>
<dt>学科</dt>
<dd>java</dd>
<dd>c</dd>
<dd>c++</dd>
<dt>位置</dt>
<dd>杭州</dd>
<dd>重庆</dd>
</dl>
表格
简单通用,结构稳定
基本结构:
单元格、行、列、跨行、跨列
<!--表格table
行 tr rows
列 td
border : 边界
column:列
row:行
span:跨度,范围
-->
<table border="1px">
<tr>
<td>id</td>
<td>name</td>
<td>password</td>
</tr>
<tr>
<td>1</td>
<td>zhangsan</td>
<td>0000</td>
</tr>
<tr>
<!--跨列colspan="跨的列数"-->
<td colspan="4">员工信息</td>
</tr>
<tr>
<!--跨行rowspan="跨的行数"-->
<td rowspan="3">部门</td>
<td>id</td>
<td>name</td>
<td>password</td>
</tr>
<tr>
<td>1</td>
<td>zhangsan</td>
<td>0000</td>
</tr>
</table>
媒体元素
视频
<!--音频和视频
video /?v? di ??/ 视频,录像
src:资源路径
controls:控制条
autoplay:自动播放
-->
<video src="../resources/video/202002241911.mp4" controls autoplay></video>
音频
<!--音频和视频
audio /???di ??/ 声音的,音频的
src:资源路径
controls:控制条
autoplay:自动播放
-->
<audio src="../resources/audio" controls autoplay></audio>
页面结构分析
元素名 | 描述 |
---|---|
header | 标题头部区域的内容(用于页面或页面中的一块区域) |
footer | 标记脚部区域的内容(用于整个页面或页面的一块区域) |
section | Web页面中的一块独立区域 |
article | 独立的文章内容 |
aside | 相关内容或应用(常用于侧边栏) |
nav | 导航类辅助内容 |
iframe内联框架
在一个网页内嵌入另一个网页
<iframe src="path" name="mainFrame"></iframe>
src:引用页面地址
name:框架标识名
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<!--iframe内联框架
src:地址
width:宽度
height:高度
将百度页面嵌入到当前框架内显示
src定义要嵌入网页的地址,会直接将要嵌入到网页嵌入在里面
-->
<iframe src="https:www.baidu.com" name="baidu" frameborder="0" width="1887px" height="900px"></iframe>
<iframe src="" name="hello" frameborder="0" width="1900px" height="900px"></iframe>
<!--
点击跳转时,将html05.html嵌入到hello框架内显示
a标签一定要写target="内联框架标识名:name数值"
-->
<a href="html05.html" target="hello">点击跳转</a>
</body>
</html>
五:表单及表单应用(重点)
表单语法
method:规定如何发送表单数据,常用值:get | post
action:表示向何处发送表单数据
<form method="post" action="result.html">
<p>名字:<input name="name" type="text"></p>
<p>密码:<input name="pass" type="password"></p>
<p>
<input type="submit" name="Button" value="提交"/>
<input type="reset" name="Reset" value="重置"/>
</p>
</form>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<!--表单form
action:表单提交的位置,可以是网站,也可以是一个请求处理地址
method:
get:我们可以在url中看到我们提交的信息,不安全,高效
post:比较安全,传输大文件
-->
<form action="html07.html" method="get">
<!--文本输入框:input type="text"-->
<p>名字:<input name="name" type="text"></p>
<!--密码框:input type="passsword"-->
<p>密码:<input name="pass" type="password"></p>
<p>
<input type="submit" name="Button" value="提交"/>
<input type="reset" name="Reset" value="重置"/>
</p>
</form>
</body>
</html>
属性 | 说明 |
---|---|
type | 指定元素的类型。text(文本框)、password(密码框)、checkbox(多选框)、radio(单选框)、submit(提交)、reset(重置)、file(文件上传)、hidden(隐藏域)、image(图片按钮)和button(普通按钮),默认text |
name | 指定表单元素的名称 |
value | 元素的初始值。type为radio时必须指定一个值 |
size | 指定表单元素的初始宽度。当type为text或password时,表单元素的大小以字符为单位,对于其他类型,宽度以像素为单位 |
maxlength | type为text或password时,输入的最大字符数 |
checked | type为radio或checkbox时,指定按钮是否是被选中 |
<form action="html07.html" method="get">
<!--文本输入框:input type="text"
size:文本框长度
value:默认初始值
maxlength:最长能写几个字符
-->
<p>名字:<input name="name" type="text" value="用户名" size="3"></p>
<!--密码框:input type="passsword"-->
<p>密码:<input name="pass" type="password" value="密码" maxlength="6"></p>
<!--单选框标签
input type="radio"
value:单选框的值
name:表示组
-->
<p>
<input type="radio" name="sex" value="0"/>男
<input type="radio" name="sex" value="1"/>女
</p>
</form>
<form action="html07.html" method="get">
<!--
提交按钮:input type="submit"
重置按钮:input type="reset"
-->
<p>
<input type="submit" name="Button" value="提交"/>
<input type="reset" name="Reset" value="重置"/>
</p>
<!--多选框
input type="checkbox"
-->
<p>地址:
<input type="checkbox" name="site" value="beijing">北京
<input type="checkbox" name="site" value="shanghai">上海
<input type="checkbox" name="site" value="hangzhou">杭州
</p>
<!--普通按钮
input type="button"
-->
<p>
<input type="button" name="确认" value="yes">点击按钮
</p>
<!--图片按钮
input type="image"
-->
<p>
<input type="image" name="yes" src="../resources/imags/264933.jpg">
</p>
</form>
<form action="html07.html" method="get">
<!--下拉框
select:标签
option:选项
selected:默认选中项
-->
<p>国家:
<select name="guojia" id="">
<option value="xuanxiang">选项</option>
<option value="china" selected>中国</option>
<option value="hg">韩国</option>
<option value="xjp">新加坡</option>
</select>
</p>
<!--文本域
textarea
cols:列
rows:行
-->
<p>反馈:
<textarea name="text" cols="10" rows="10"></textarea>
</p>
<!--文件域
input type="file" name=""
-->
<p>
<input type="file" name="file">
</p>
</form>
<form action="html07.html" method="get">
<!--邮箱验证
input type="email" name=""
-->
<p>邮箱:
<input type="email" name="email">
</p>
<!--url验证
input type="url" name=""
-->
<p>url:
<input type="url" name="url">
</p>
<!--数字验证
input type="number" name=""
max:最大值
min:最小值
step:每次增加的数量
value:设置初始值
-->
<p>商品数量:
<input type="number" name="number" max="10" min="1" step="2" value="0">
</p>
<!--滑块:
input type="range" name=""
应用范围:一般用于音量
max:最大值
min:最小值
step:每次
-->
<p>音量:
<input type="range" name="vol" max="100" min="0">
</p>
<!--搜索框
input type="search" name="" search /s??t?/ 搜索,搜寻
-->
<p>搜索:
<input type="search" name="search">
</p>
</form>
表单应用
隐藏域
<!--
hidden:隐藏框内内容不显示,但实际的值是存在且可提交的
-->
<p>
密码:<input name="pass" type="password" value="密码" maxlength="6" hidden>
</p>
只读
<!--
readonly:设为只读,不能修改
-->
<p>
名字:<input name="name" type="text" value="用户名" size="3" readonly>
</p>
禁用
<!--
disabled:禁用,不能进行操作
-->
<input type="radio" name="sex" value="0" disabled/>男
扩展:
增强鼠标可用性
<!--
label标签
for:指定一个id,当点击“跳到”时,光标会跳到id所在的标签框内
-->
<label for="mian">跳到</label>
<input type="text" id="mian" name="text">
六:表单初级验证(重点)
常用方式
placeholder提示信息
<!--
placeholder: 默认提示信息,当编辑新内容时,会被取代
应用在输入框中
-->
<input type="text" name="username" placeholder="请输入用户名">
required非空判断
<!--
required: 非空判断,必须填写
应用在输入框中
-->
<input type="text" name="" placeholder="请输入用户名" required>
pattern正则表达式
<!--
pattern: 正则表达式,使用正则表达式脚本规范验证
应用在输入框中
-->
<input type="text" name="" placeholder="请输入用户名" required pattern="/^[a-z0-9_-]{3,16}$/">