前言
该文是对HTML进行简单的介绍
目录
一、web概念概述
-JavaWeb是使用java语言开发基于互联网的项目
其中有个概念:软件架构
软件架构分为两种:
1.C/S:client/Server 客户端/服务端
* 在用户本地有一个客户端程序,在远程有一个服务器端程序
* 如:QQ,迅雷...
* 优点:
1. 用户体验好
* 缺点:
1. 开发、安装,部署,维护不易
2.B/S :Browser/Server 浏览器/服务器端
* 只需要一个浏览器,用户通过不同的网址(URL),客户访问不同的服务器端程序
* 优点:
1. 开发、安装,部署,维护 简单
* 缺点:
1. 如果应用过大,用户的体验可能会受到影响
2. 对硬件要求过高
我们HTML就是属于BS架构的,因此,这里详细概括一下BS架构
资源分类
1.静态资源:
使用静态网页开发技术发布的资源
特点:
所有用户访问,得到的结果是一样的
如:文本、图片、音频、视频,HTML,CSS,JavaScript
如果用户请求的是静态资源,那么服务器会直接将静态资源发送给浏览器。浏览器中内置了静态资源的解析引擎,可以展示静态资源静态资源:
* HTML:用于搭建基础网页,展示页面的内容
* CSS:用于美化页面,布局页面
* JavaScript:控制页面的元素,让页面有一些动态的效果
2.动态资源
使用动态网页及时发布的资源
特点
* 所有用户访问,得到的结果可能不一样。
* 如:jsp/servlet,php,asp...
* 如果用户请求的是动态资源,那么服务器会执行动态资源,转换为静态资源,再发送给浏览器
我们要学习动态资源,必须先学习静态资源!
二、HTML初识
2.1、概念:
1.概念:是最基础的网页开发语言
Hyper Text Markup Language 超文本标记语言
* 超文本:
* 超文本是用超链接的方法,将各种不同空间的文字信息组织在一起的网状文本.
* 标记语言:
* 由标签构成的语言。<标签名称> 如 html,xml
* 标记语言不是编程语言
2.2、入门语法
语法
1. html文档后缀名 .html 或者 .htm
2. 标签分为
①. 围堵标签:有开始标签和结束标签。如 <html> </html>②. 自闭和标签:开始标签和结束标签在一起。如 <br/>
3. 标签可以嵌套:
需要正确嵌套,不能包含错误
错误:<a><b></a></b>
正确:<a><b></b></a>4. 在开始标签中可以定义属性。属性是由键值对构成,值需要用引号(单双都可)引起来
5. html的标签不区分大小写,但是建议使用小写。
三、HTML标签
3.1、基础标签学习
标签这里只记录常用的几种标签,详细的标签学习参考菜鸟教程: HTML 教程 | 菜鸟教程 (runoob.com)
①:文件标签:
定义
构成html最基本的标签
内容
html
html文档的根标签
head
头标签。用于指定html文档的一些属性。引入外部的资源
title
标题标签。
body
体标签
<!DOCTYPE html>:
html5中定义该文档是html文档
②:文本标签
定义
和文本有关的标签
内容
注释
<!-- 注释内容 -->
<h1> to <h6>
标题标签
h1~h6:字体大小逐渐递减
<p>
段落标签
<br>
换行标签
<hr>
展示一条水平线
属性:
color:颜色
* width:宽度
* size:高度
* align:对其方式
* center:居中
* left:左对齐
* right:右对齐
<b>
字体加粗
<i>
字体斜体
<font>
字体标签
<center>
文本居中
属性:
* color:颜色
* size:大小
* face:字体
属性定义:
color:
1. 英文单词:red,green,blue
2. rgb(值1,值2,值3):值的范围:0~255 如 rgb(0,0,255)
3. #值1值2值3:值的范围:00~FF之间。如: #FF00FF
width:
1. 数值:width='20' ,数值的单位,默认是 px(像素)
2. 数值%:占比相对于父元素的比例
代码演示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>AMDyes</title>
</head>
<body>
<font color= '#c71585'>古诗一首</font>
<!--换行标签 <br/> -->
<br/>
<!-- 注释内容-->
<!-- 标题标签 <h1> to <h6>效果展示-->
<h1>古诗一首 </h1>
<h2>古诗一首 </h2>
<h3>古诗一首 </h3>
<h4>古诗一首 </h4>
<h5>古诗一首 </h5>
<h6>古诗一首 </h6>
不敢高声语,<br/>
恐惊天上人。
<!--段落标签 <p> 效果展示 -->
<p>
1 恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。
</p>
<p>
2 恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。
</p>
<p>
3 恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。恐惊天上人。
</p>
<!--展示一条水平线 <hr> -->
<hr color = 'red' width = '450' size = '10' align = 'right'>
<br> <br>
<b> 恰似一江春水向东流</b>
<br>
<i>恰似一江春水向东流</i>
<br>
<font color = #ff7f50 size = 20 face = '楷体'> 恰似一江春水向东流</font>
<hr width="50%" align = 'left'>
<center>
<font color = #ff7f50 size = 20 face = '楷体'> 恰似一江春水向东流</font>
</center>
</body>
</html>
效果展示
③:图片标签
img:展示图片
属性:
src:指定图片的位置
alt
未加载出图片时放的文字
代码演示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>图片标签</title>
</head>
<body>
<!--展示一张图片 -->
<img src="image/jingxuan_2.jpg" align="right" alt = "古镇" width = '600' height = '700'/>
</body>
</html>
效果展示
④:列表标签
有序列表
* ol:
* li:
无序列表
* ul:
* li:
代码演示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>列表标签</title>
</head>
<body>
<!--有序列表 ol orderList-->
<ol type="i" start=9>
早上课表
<li>语文</li>
<li>数学</li>
<li>英语</li>
<li>科学</li>
<li>数学</li>
<li>语文</li>
<li>体育</li>
</ol>
<!--无序列表 ul unOrderList-->
<ul type = 'disc'>
早上课表
<li>语文</li>
<li>数学</li>
<li>英语</li>
<li>科学</li>
<li>数学</li>
<li>语文</li>
<li>体育</li>
</ul>
</body>
</html>
效果演示
⑤:链接标签
<a>
a:定义一个超链接
属性:
* href:指定访问资源的URL(统一资源定位符)
* target:指定打开资源的方式
* _self:默认值,在当前页面打开
* _blank:在空白页面打开
代码演示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>超链接标签</title>
</head>
<body>
<!--超链接标签<a>-->
<a href = 'https://www.baidu.com/'>点击跳转到百度</a>
<br/>
<!--超链接标签跳转到空白页面演示-->
<a href = 'https://www.baidu.com/' target="_blank">点击跳转到百度 </a>
<br/>
<!--超链接跳转到本页面演示-->
<a href = 'https://www.baidu.com/' target="_self">点击跳转到百度 </a>
<br/>
<!--跳转到本地资源演示-->
<a href = 公司简介.html target = _blank> 点击跳转到公司简介 </a>
<br>
<!--跳转到邮箱演示-->
<a href = "mailto:WW448262173X@163.com">联系我们</a>
<br>
<!--使用图片作为跳转连接演示-->
<a href = 列表标签.html target = _blank> <img src="image/icon_1.jpg"> </a>
</body>
</html>
效果演示
⑥:块标签
div:每一个div占满一整行。块级标签
span:文本信息在一行展示,行内标签 内联标签
代码演示
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>块标签</title>
</head>
<body>
<!--块标签 div span-->
<!--div演示 默认换行-->
<div>空山新雨后</div>
<div>天气晚来秋</div>
<hr>
<!--span标签,默认不换行-->
<span>空山新雨后</span>
<span>天气晚来秋</span>
</body>
</html>
效果展示
⑦:表格标签
table :定义表格
* width:宽度
* border:边框
* cellpadding:定义内容和单元格的距离
* cellspacing:定义单元格之间的距离。如果指定为0,则单元格的线会合为一条、
* bgcolor:背景色
* align:对齐方式
tr:定义行
* bgcolor:背景色
* align:对齐方式
td:定义单元格
* colspan:合并列
* rowspan:合并行
th:定义表头单元格
* <caption>:表格标题
* <thead>:表示表格的头部分
* <tbody>:表示表格的体部分
* <tfoot>:表示表格的脚部分
表格也是可以嵌套的
代码演示
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表格标签</title>
</head>
<body>
<!--表格标签演示-->
<!--定义表格-->
<table border="3" bgcolor="#fff8dc" width="50%" align='center' cellpadding="0" cellspacing="0">
<!-- 定义行-->
<tr bgcolor="#ff8c00">
<!-- 定义单元格-->
<th>编号</th>
<th>姓名</th>
<th>成绩</th>
</tr>
<!-- 定义行-->
<tr align="center">
<!-- 定义单元格-->
<td>1</td>
<td>张三</td>
<td>65</td>
</tr>
<!-- 定义行-->
<tr align="center">
<!-- 定义单元格-->
<td>2</td>
<td>王五</td>
<td>99</td>
</tr>
</table>
<hr>
<!--表格标签演示2-->
<!--定义表格-->
<table border="3" bgcolor="#fff8dc" width="50%" align='center' cellpadding="0" cellspacing="0">
<!-- 定义表格标题-->
<caption>学生成绩表</caption>
<!-- 定义行-->
<!-- thead标签-->
<thead>
<tr bgcolor="#ff8c00">
<!-- 定义单元格-->
<th>编号</th>
<th>姓名</th>
<th>成绩</th>
</tr>
</thead>
<!-- 定义行-->
<!-- tbody标签-->
<tbody>
<tr align="center">
<!-- 定义单元格-->
<td>1</td>
<td>张三</td>
<td>65</td>
</tr>
<!-- 定义行-->
<tr align="center">
<!-- 定义单元格-->
<td>2</td>
<td>王五</td>
<td>99</td>
</tr>
</tbody>
<!-- 定义行-->
<!-- tfoot标签-->
<tfoot>
<tr align="center">
<!-- 定义单元格-->
<td>3</td>
<td>赵六</td>
<td>99</td>
</tr>
</tfoot>
</table>
<hr>
<!--表格标签演示3-->
<!--定义表格-->
<div class="text" style="text-align: center"><font color="#00ffff">演示行合并和列合并</font></div>
<table border="3" bgcolor="#fff8dc" width="50%" align='center' cellpadding="0" cellspacing="0">
<!-- 定义行-->
<tr bgcolor="#ff8c00">
<!-- 定义单元格-->
<!-- 合并行的属性-->
<th rowspan='2'>编号</th>
<th>姓名</th>
<th>成绩</th>
</tr>
<!-- 定义行-->
<tr align="center">
<!-- 定义单元格-->
<td>张三</td>
<td>65</td>
</tr>
<!-- 定义行-->
<tr align="center">
<!-- 定义单元格-->
<td>2</td>
<td colspan="2">王五</td>
</tr>
</table>
</body>
</html>
效果演示
⑧表单标签
表单概念
用于采集用户输入的数据的。用于和服务器进行交互
标签:form:
用于定义表单的。可以定义一个范围,范围代表采集用户数据的范围
属性:
* action:指定提交数据的URL
* method:指定提交方式
* 分类:一共7种,2种比较常用
* get:
1. 请求参数会在地址栏中显示。会封装到请求行中(HTTP协议后讲解)。
2. 请求参数大小是有限制的。
3. 不太安全。
* post:
1. 请求参数不会再地址栏中显示。会封装在请求体中(HTTP协议后讲解)
2. 请求参数的大小没有限制。
3. 较为安全。
表单项中的数据要想被提交:必须指定其name属性
代码演示
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单标签</title>
</head>
<body>
<form action="公司简介.html" method="post">
用户名:<input name="username"><br>
密码:<input name="password"><br>
<input type="submit" value="登陆">
</form>
</body>
</html>
表单项标签
input:可以通过type属性值,改变元素展示的样式
type属性:
*radio:单选框
1. 要想让多个单选框实现单选的效果,则多个单选框的name属性值必须一样。
2. 一般会给每一个单选框提供value属性,指定其被选中后提交的值
checked属性,可以指定默认值
* checkbox:复选框
1. 一般会给每一个单选框提供value属性,指定其被选中后提交的值
2. checked属性,可以指定默认值
* image:图片提交按钮
* src属性指定图片的路径
* file:文件选择框
* 按钮:
* hidden:隐藏域,用于提交一些信息。
* submit:提交按钮。可以提交表单
* button:普通按钮
* text:文本输入框,默认值
placeholder:指定输入框的提示信息,当输入框的内容发生变化,会自动清空提示信息
password:密码输入框
* label:指定输入项的文字描述信息
* 注意:
* label的for属性一般会和 input 的 id属性值 对应。如果对应了,则点击label区域,会让input输入框获取焦点。
select: 下拉列表
* 子元素:option,指定列表项
selected 默认选择元素
textarea:文本域
* cols:指定列数,每一行有多少个字符
* rows:默认多少行。
代码演示
<!--
*@packageName
*@className 表单项标签
*@author wang
*@date 2022/1/23 17:51
*@Description
-->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单项目标签</title>
</head>
<body>
<form action="#" method="get">
<!-- 用户名和密码 placeholder 属性为框内提示语句-->
<!-- 测试label标签 label标签中的属性对应着input标签中的ID属性,作用是当我们点击label域的时候
会自动跳转到输入框
你的label域for属性一定要与input标签的ID属性相等-->
<label for="username">
用户名:<input name="username" placeholder="请输入用户名" id="username">
</label>
<br>
<label for="password">
密码:<input type='password'name="password" placeholder="请输入密码" id="password">
</label>
<br>
<!-- 测试表单项标签单选属性radio
如果两个input标签的name属性不一致的话,会导致重复选择,因此单选框的name属性必须一致
其次,例如我们案例为性别,提交之后,如果不指定value属性,该单选也是无意义的-->
性别:<input type="radio" name="gender" value="male" checked> 男
<input type="radio" name="gender" value="female"> 女
<br>
<!-- 测试表单项标签input属性复选属性 checkbox-->
爱好:<input type="checkbox" name="hobby" value="shopping"> 逛街
<input type="checkbox" name="hobby" value="playGame" checked> 打游戏
<input type="checkbox" name="hobby" value="doSomeSport"> 做运动
<br>
<!-- 测试文件提交file-->
图片:<input type="file" name="file"><br>
<!-- 测试隐藏域hidden-->
隐藏域:<input type="hidden" name="hidden" value="id"><br>
<!-- 测试按钮-->
<!-- button按钮:仅仅只是一个按钮,配合使用-->
一个按钮:<input type="button" value="button"><br>
<!-- 图片提交按钮image-->
<input type="image" src="image2/regbtn.jpg"><br>
<!-- 测试取色器-->
取色器:<input type="color" name="color"><br>
<!-- 测试生日date-->
生日:<input type="date" name="date"><br>
<!-- 测试日期,datetime-local-->
生日:<input type="datetime-local" name="date2"><br>
<!-- 测试邮箱-->
邮箱:<input type="email" name="邮箱"><br>
<!-- 测试数字:仅仅只能输入数字-->
年龄:<input type="number" name="年龄"><br>
<!-- 测试select标签 子标签option value为空不提交,如果浏览器不支持提交中文,可以使用value指定值提交 selected选择默认值-->
请选择您的省份:<select name="province">
<option value="">--请选择--</option>
<option value="1" selected>重庆</option>
<option value="2">北京</option>
<option value="3">上海</option>
<option value="4">天津</option>
</select>
<br>
<!-- 测试文本域标签 textarea cols是列,rows是行,-->
自我介绍:
<textarea cols="25" rows="10" name="dec"> </textarea>
<!-- 登陆框-->
<br>
<input type="submit" value="登陆">
</form>
</body>
</html>
效果展示