1 初识HTML
HTML(Hyper Text Markup Language) 超文本标记语言
- 超文本包括:文字、图片、音频、视频、动画等
- 当前广泛使用版本: HTML 5 + CSS 3
- HTML 5 提供的新功能:使用网页实现动态渲染图形、图表、图像和动画,以及不需要安装任何插件直接使用网页播放视频等。
W3C (World Wide Web Consortium) 万维网联盟
W3C 标准包括:
- 结构化标准语言 (HTML、XML)
- 表现标准语言 (CSS)
- 行为标准 (DOM、ECMAScript)
网页基本信息
<!-- 注释 -->
<!-- DOCTYPE:告诉浏览器,我们要使用什么规范 -->
<!DOCTYPE html>
<html lang="en">
<!-- head 标签代表网页头部 -->
<head>
<!-- meta 描述性标签,它用来描述网站的一些信息 -->
<!-- meta 一般用来做SEO -->
<meta charset="UTF-8">
<meta name="keywords" content="狂神说Java,西部开源">
<meta name="description" content="来这个地方可以学Java">
<!-- title 标签代表网页标题 -->
<title>这是一个标题Title</title>
</head>
<!-- body 标签代表网页主体 -->
<body>
Hello, World!
Hello, World!
Hello, World!
</body>
</html>
2 网页基本标签
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>基本标签学习</title>
</head>
<body>
<!-- 标题标签 -->
<h1>标题标签</h1>
<h1>一级标签</h1>
<h2>二级标签</h2>
<h3>三级标签</h3>
<h4>四级标签</h4>
<h5>五级标签</h5>
<h6>六级标签</h6>
<!-- 换行标签 -->
<h1>换行标签</h1>
长太息以掩涕兮,哀民生之多艰。<br/>
余虽好修姱以鞿羁兮,謇朝谇而夕替。<br/>
既替余以蕙纕兮,又申之以揽茝。<br/>
亦余心之所善兮,虽九死其犹未悔。<br/>
<!-- 水平线标签 -->
<h1>水平线标签</h1>
<hr>
<!-- 段落标签 -->
<h1>段落标签</h1>
<p>长太息以掩涕兮,哀民生之多艰。</p>
<p>余虽好修姱以鞿羁兮,謇朝谇而夕替。</p>
<p>既替余以蕙纕兮,又申之以揽茝。</p>
<p>亦余心之所善兮,虽九死其犹未悔。</p>
<!-- 字体样式标签 -->
<h1>字体样式标签</h1>
粗体: <strong>Hello, World!</strong>
<br/>
斜体: <em>Hello, World!</em>
<!-- 注释和特殊符号 -->
<h1>注释和特殊符号</h1>
空格: 空 格
<br/>
大于号: >
<br/>
小于号: <
<br/>
<!--
特殊符号记忆方式
&
;
-->
</body>
</html>
3 图像,超链接,网页布局
图像
<img src="resources/image/Chrysanthemum.jpg" alt="菊花" title="悬停文字" width="300" height="300">
src : 图片地址(必填)
相对地址 ../ --上一级目录
绝对地址 E:/....
alt : 图像的替代文字(必填)
title : 悬停文字
width : 宽度
height : 高度
链接
<!-- 使用 name 作为标记 -->
<a name="top"><h1>顶部</h1></a>
<!-- a 标签
href : 要跳转到的页面 (必填)
target :
"_balnk" : 在新的标签也打开
"_self" : 在自己的标签页打开
-->
<a href="https://www.baidu.com"target="_">点击跳转到百度</a>
<br/>
<a href="1.我的第一个网页.html">点击跳转到我的第一个网页</a>
<br/>
<a href="3.图像标签.html">
<img src="resources/image/Chrysanthemum.jpg" alt="菊花" title="悬停文字" width="300" height="300"></a>
<br/>
<!-- 锚链接
1. 需要一个标记
2. 跳转到标记
#
-->
<a href="#top">回到顶部</a>
<!-- 功能性链接
邮件链接 :mailto:
QQ链接:略
-->
<a href="mailto:lilintrans@163.com">点击联系我</a>
元素:无论内容多少,独占一行,如
<p>
、<h1>
...
行内元素:内容撑开宽度,左右都是行内元素可以排在一起,如
<a>
、<strong>
、<em>
...
4 列表,表格,媒体元素
列表
有序列表 <ol>
<!-- 有序列表
应用范围:试卷,问答 ...
-->
<ol>
<li>Java</li>
<li>Python</li>
<li>运维</li>
<li>前端</li>
<li>C</li>
</ol>
无序列表<ul>
<!-- 无序列表
导航,侧边栏 ...
-->
<ul>
<li>Java</li>
<li>Python</li>
<li>运维</li>
<li>前端</li>
<li>C</li>
</ul>
自定义列表<dl> <dt> <dd>
<!-- 自定义列表
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>
<dd>苏州</dd>
</dl>
表格<table> <tr> <td>
<table border="1px">
<tr>
<!-- colspan -->
<td colspan="4">1-0</td>
</tr>
<tr>
<td rowspan="2">2-0</td>
<td>2-2</td>
<td>2-3</td>
<td>2-4</td>
</tr>
<tr>
<td>3-2</td>
<td>3-3</td>
<td>3-4</td>
</tr>
<tr>
<td rowspan="2">3-0</td>
<td>4-2</td>
<td>4-3</td>
<td>4-4</td>
</tr>
<tr>
<td>5-2</td>
<td>5-3</td>
<td>5-4</td>
</tr>
</table>
媒体元素
- src : 资源路径
- controls : 控制条
- autoplay : 自动播放
<video src="resources/video/test.mp4" controls autoplay></video>
<audio src="resources/audio/music.mp3" controls></audio>
5 页面结构分析
header : 标题头部区域的内容(用于页面或页面中的一块区域)
footer : 标记脚部区域的内容(用于整个页面或页面的一块区域)
section : Web页面中的一块独立区域
article : 独立的文章内容
aside : 相关内容或应用(常用于侧边栏)
nav : 导航类辅助内容
6 Iframe 内联框架
<iframe src="http://www.bilibili.com" frameborder="0"></iframe>
<!-- 这样就变为小窗口 -->
<iframe src="" name="hello" frameborder="0" width="1000px" height="800px"></iframe>
<a href="http://www.bilibili.com" target="hello">点击跳转</a>
<!-- 这样就变为1000*800的窗口 -->
<a href="http://www.bilibili.com">点击跳转</a>
<!-- 这样就变为了直接跳转 -->
7 表单及表单应用
表单 form
简单文本框与密码框
<!--<form action="1.我的第一个网页.html" method="get">-->
<form action="1.我的第一个网页.html" method="post">
<!-- 文本框输入 : inut type ="text" -->
<p>名字: <input type="text" name="username"></p>
<!-- 密码框输入 : inut type ="password" -->
<p>密码: <input type="password" name="pwd"></p>
<p>
<input type="submit">
<input type="reset">
</p>
</form>
action : 表单提交的位置,可以是网站,也可以是一个请求处理地址
method : post , get 提交方式
- get : 可以在 url 中看到提交的信息,不安全,高效
- post : 比较安全,传输大文件
文本框属性
<form action="1.我的第一个网页.html" method="post">
<!-- 文本框输入 :
inut type ="text"
value="你好" 默认初始值
maxlength="8" 最长能写几个字符
size="30" 文本框的长度
-->
<p>名字: <input type="text" name="username" value="你好" maxlength="8" size="30"></p>
单选框
性别:
<input type="radio" value="boy" name="sex"/>男
<input type="radio" value="girl" name="sex"/>女
<!-- name 要相同才为单选 -->
多选框
<input type="checkbox" value="sleep" name="hobby" >睡觉
<input type="checkbox" value="code" name="hobby" >敲代码
<input type="checkbox" value="chat" name="hobby" >聊天
<input type="checkbox" value="game" name="hobby" >游戏
按钮
input type="button" 普通按钮
input type="image" 图像按钮
input type="submit" 提交按钮
input type="reset" 重置
<input type="button" name="btn1" value="点击变长">
<input type="image" src="resources/image/Tulips.jpg">
<input type="submit">
<input type="reset" value="清空表单">
下拉框
<select name="列表名称" >
<option value="china">中国</option>
<option value="UK">英国</option>
<option value="乌拉">俄罗斯</option>
<option value="USA">美国</option>
<option value="France">法国</option>
</select>
选项显示为中文,传递的值为 value
文本域
<p>反馈:
<textarea name="textarea" col="50" rol="10">文本域</textarea>
</p>
文件域
<input type="file">
<input type="button" value="上传" name="upload">
邮箱验证
邮箱: <input type="email" name="email">
邮箱:
URL
URL: <input type="url" name="url">
数字
数字: <input type="number" name="num" max="100" min="0" step="2">
滑块
音量: <input type="range" name="voice" max="100" min="0" step="2">
搜索框
搜索: <input type="search" name="search">
补充——增强鼠标可用性
搜索: <input type="search" name="search" id="mark">
<!-- 增强鼠标可用性 -->
<label for="mark">点我进入搜索</label>
<input type="text">
mark
表单的应用
隐藏域 hidden
<input type="password" name="pwd" hidden value="123456" >
此处隐藏密码框,会传递默认 value 值
只读 readonly
名字: <input type="text" name="username" value="你好" readonly>
名字: <input type="text" name="username" value="你好">
只可查看,不可修改
禁用 disabled
性别:
<input type="radio" value="boy" name="sex"checked disabled/>男
<input type="radio" value="girl" name="sex"/>女
checked disabled 不可修改,只能选一次
8 表单初级验证
placeholder
名字1: <input type="text" name="username" placeholder="请输入用户名">
名字2: <input type="text" name="username" value="你好">
placeholder为提示信息,名字1 可直接输入,名字2需要删除原有 value 且可被传递
required
名字: <input type="text" name="username" placeholder="请输入用户名" required>
required为非空判断,名字必须填写
pattern
<input type="text" name="customizedmail" pattern="^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$">
用来使用正则表达式验证邮箱的格式