一、初识HTML
什么是HTML
- HTML:Hyper Text Markup Language (超文本标记语言)
- HTML5:提供了一些新的元素和一些有趣的新特性,同时也建立了一些新的规则。这些元素、特性和规则的建立,提供了许多新的网页功能,如使用网页实现动态渲染图形、图表、图像和动画,以及不需要安装任何插件直接使用网页播放视频等。
- HTML5的优势
- 世界知名浏览器厂商对HTML5的支持。(微软、Google、苹果、Opera、Mozilla)
- 市场的需求。
- 跨平台。
W3C标准
- W3C
- World Wide Web Consortium (万维网联盟)
- 成立于1994年,Web技术领域最权威和具影响力的国际中立性技术标准机构。
- http://www.w3.org/
- http://www.chinaw3c.org
- W3C标准包括
- 结构化标准语言 (HTML、XML)
- 表现标准语言 (CSS)
- 行为标准 (DOM、ECMAScript)
HTML基本结构
- <body> </body>等成对的标签,分别叫开放标签和闭合标签。
- 单独呈现的标签 (空元素),如<hr/>,叫自闭和标签,意为用 / 来关闭空元素。
网页基本信息
- DOCTYPE声明
- <title>标签
- <meta>标签
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="keywords" content="狂神说Java,西部开源">
<meta name="description" content="来这个地方可以学习Java">
<title>我的第一个网页</title>
</head>
<body>
Hello,World!
</body>
</html>
二、网页基本标签
快捷键:html + tab, p + tab … (其它标签相同)
- 标题标签:
<h1> </h1>
~ <h6> </h6>
- 段落标签:
<p> </p>
- 换行标签:
<br/>
- 水平线标签:
<hr/>
- 字体样式标签:
- 粗体:
<strong> </strong>
- 斜体:
<em> </em>
- 注释和特殊符号:
- 注释:
<!-- -->
- 空格:
- 大于:
>
- 小于:
<
- 版权符号:
©
<!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>
<p>一只没有耳朵,</p>
<p>一只没有尾巴,</p>
<p>真奇怪!真奇怪!</p>
<hr/>
两只老虎,两只老虎, <br/>
跑得快,跑得快,<br/>
一只没有眼睛,
一只没有尾巴,<br/>
真奇怪!真奇怪!<br/>
两只老虎,两只老虎,<br/>
跑得快,跑得快,<br/>
一只没有耳朵,
一只没有尾巴,<br/>
真奇怪!真奇怪!<br/>
粗体:<strong>i love you</strong>
斜体:<em>i love you</em>
<br/>
空 格
空 格
>
<
©
</body>
</html>
三、图像,超链接,网页布局
图像标签
<img src="" alt=""/>
- 常见的图像格式
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图像标签学习</title>
</head>
<body>
<img src="../resources/image/1.jpg" alt="小狗" title="悬停显示:小狗" width="1706" height="1280"/>
</body>
</html>
链接标签
<a href=""> </a>
- 超链接:文本超链接,图像超链接
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>链接标签学习</title>
</head>
<body>
<a name="top">顶部</a>
<a href="1.我的第一个网页.html" target="_blank">点击我跳转到页面一</a>
<a href="https://www.baidu.com" target="_self">点击我跳转到百度</a>
<br>
<a href="1.我的第一个网页.html">
<img src="../resources/image/1.jpg" alt="小狗" title="悬停显示:小狗" width="300" height="200">
</a>
<br>
<a href="#top">回到顶部</a>
<a href="3.图像标签.html#down">跳转到网址3的底部</a>
<a href="mailto:14768760555@163.com">点击联系我</a>
</body>
</html>
网页布局:行内元素和块元素
- 块元素
- 块元素会独自占据一整行,或者多行,可以任意设置其大小尺寸,是用于搭建网页布局的必须部分,使网页结构更加紧凑合理。
- 例如:p、h1-h6、…
- 行内元素
- 行内元素不占有独立区域,其大小仅仅被动的依赖于自身内容的大小 (例如文字和图片),所以一般不能随意设置其宽高、对齐等属性。常用于控制页面中文本的样式。
- 例如:strong、em、…
- 默认情况下,行内元素不会以新行开始,而块级元素会新起一行。
- 一般情况下,行内元素只能包含数据和其他行内元素。 而块级元素可以包含行内元素和其他块级元素。
- 这种结构上的包含继承区别可以使块级元素创建比行内元素更”大型“的结构。
四、列表,表格,媒体元素
列表
- 什么是列表
- 列表就是信息资源的一种展示形式。它可以使信息结构化和条理化,并以列表的样式显示出来,以便浏览者能更快捷地获得相应的信息。
- 列表的分类
- 有序列表
<ol> </ol>
- 无序列表
<ul> </ul>
- 自定义列表
<dl> </dl>
<!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>编程语言</dt>
<dd>Java</dd>
<dd>Python</dd>
<dd>Linux</dd>
<dd>C</dd>
<dt>城市</dt>
<dd>西安</dd>
<dd>重庆</dd>
<dd>新疆</dd>
<dd>济宁</dd>
</dl>
</body>
</html>
表格
<table> </table>
- 为什么使用表格
- 基本结构
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表格学习</title>
</head>
<body>
<table border="1px">
<tr>
<td colspan="4">1-1</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>
</tr>
</table>
</body>
</html>
媒体元素
- 视频元素:
<video> </video>
- 音频元素:
<audio> </audio>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>媒体元素学习</title>
</head>
<body>
<video src="../resources/video/1.mp4" controls autoplay></video>
<audio src="../resources/audio/1.mp3" controls autoplay></audio>
</body>
</html>
页面结构分析
元素名 | 描述 |
---|
header | 头部区域的内容 (用于整个页面或页面中的一块区域) |
footer | 脚步区域的内容 (用于整个页面或页面中的一块区域) |
section | Web页面中的一块独立区域 |
article | 独立的文章内容 |
aside | 相关内容或应用 (常用于侧边栏) |
nac | 导航类辅助内容 |
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>页面结构分析</title>
</head>
<body>
<header>
<h2>网页头部</h2>
</header>
<section>
<h2>网页主体</h2>
</section>
<footer>
<h2>网页脚部</h2>
</footer>
</body>
</html>
iframe 内联框架
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<iframe src="http://www.garen.fun" frameborder="0" width="300px" height="200px"></iframe>
<iframe src="http://www.garen.fun" name="hello" frameborder="0" width="300px" height="200px"></iframe>
<a href="http://www.bilibili.com" target="hello">点击跳转</a>
</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 时,指定按钮是否是被选中。 |
表单的应用
- 隐藏域:
hidden
- 只读:
readonly
- 禁用:
disabled
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单学习:登录注册</title>
</head>
<body>
<h1>注册</h1>
<form action="1.我的第一个网页.html" method="get">
<p>账号:<input type="text" name="username" value="admin" maxlength="8" size="30" readonly></p>
<p>密码:<input type="password" name="pwd" value="123456" hidden></p>
<p>性别:
<input type="radio" value="boy" name="sex" checked disabled/>男
<input type="radio" value="girl" name="sex"/>女
</p>
<p>爱好:
<input type="checkbox" value="sleep" name="hobby"/>睡觉
<input type="checkbox" value="code" name="hobby" checked/>敲代码
<input type="checkbox" value="chat" name="hobby"/>聊天
<input type="checkbox" value="game" name="hobby"/>游戏
</p>
<p>按钮:
<input type="button" name="btn1" value="点击"/>
<input type="image" src="../resources/image/1.jpg" width="100" height="80"/>
</p>
<p>国家:
<select name="列表名称">
<option value="china">中国</option>
<option value="us">美国</option>
<option value="etc" selected>瑞士</option>
<option value="india">印度</option>
</select>
</p>
<p>反馈:
<textarea name="textarea" cols="50" rows="10">文本内容</textarea>
</p>
<p>
<input type="file" name="files"/>
<input type="button" value="上传" name="upload"/>
</p>
<p>邮箱:
<input type="email" name="email"/>
</p>
<p>URL:
<input type="url" name="url"/>
</p>
<p>商品数量:
<input type="number" name="num" max="100" min="0" step="10"/>
</p>
<p>音量:
<input type="range" name="voice" max="100" min="0" step="2"/>
</p>
<p>搜索:
<input type="search" name="search"/>
</p>
<p>
<label for="mark">点我试试</label>
<input type="text" id="mark">
</p>
<p>
<input type="submit"/>
<input type="reset" value="清空表单" disabled/>
</p>
</form>
</body>
</html>
六、表单初级验证
- placeholder:提示信息,只能用于输入框中
- required:非空判断,必填
- pattern:正则表达式判断
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单初级验证</title>
</head>
<body>
<form action="http://www.garen.fun">
<p>用户名:
<input type="text" name="username" placeholder="请输入用户名" required>
</p>
<p>自定义邮箱:
<input type="email" name="email" pattern="\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">
</p>
<p>
<input type="submit">
</p>
</form>
</body>
</html>