文章目录
1.B/S软件结构
Browser(客户端),Sever服务器
2.前端的开发流程
3.HTML简介:
告诉浏览器如何来显示文件,显示其中的内容,用哪一种格式,字体啊等等
4.创建HTML文件
1.创建一个Web工程(静态的web工程)
2.在工程下创建HtML页面
5.HTML文件的书写规范
<html> 表示整个html页面的开始
<head> 头信息
<title>标题</title> 标题
</head>
<body> body是页面的主题内容
页面主题内容
</body>
</html> 表示整个html页面的结束
6.HTML的注释
7.HtML标签的介绍
基本属性可以修改简单的样式效果
事件属性可以直接设置事件相应后的代码
常见的单标签 br换行,hr水平线
<!DOCTYPE html><!--约束,声明-->
<html lang="en"><!--html标签表示html的开始 "lang=”en“表示支持英文",“lang="zh_CN"表示中文-->
<head><!--表示头部信息,一般包含三部分内容,title标签,css样式,js代码-->
<meta charset="UTF-8"><!--表示当前页面使用的是UTF—8字符集-->
<title>标题</title><!--表示标题-->
</head>
<!--bgcolor是背景颜色属性
onclick表示单击(点击)事件
alert()是javaScript提供的一个警告框函数,他可以接受任意参数,
参数就是警告的函数信息
-->
<!--body标签是整个html页面显示的主体内容-->
<body onclick="alert('小心有内鬼')">
我是臧东坤,老牛逼了,<br/>天下第一美男子
<hr/>
我喜欢你
sdvfgerrger
dsgverqb
</body>
</html>
单标签和双标签
8.常用标签介绍(以及相应的属性) 文档 W3cschool.CHM
0.语法标签
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>0-标签语法.html</title>
</head>
<body>
<!-- ①标签不能交叉嵌套 -->
正确:<div><span>早安,尚硅谷</span></div>
错误:<div><span>早安,尚硅谷</div></span>
<hr />
<!-- ②标签必须正确关闭(闭合) -->
<!-- i.有文本内容的标签: -->
正确:<div>早安,尚硅谷</div>
错误:<div>早安,尚硅谷
<hr />
<!-- ii.没有文本内容的标签: -->
正确:<br />1
错误:<br>2
<hr />
<!-- ③属性必须有值,属性值必须加引号 -->
正确:<font color="blue">早安,尚硅谷</font>
错误:<font color=blue>早安,尚硅谷</font>
错误:<font color>早安,尚硅谷</font>
<hr />
<!-- ④注释不能嵌套 -->
正确:<!-- 注释内容 --> <br/>
错误:<!-- ④注释不能嵌套<!----> -->
<hr />
</body>
</html>
1.font标签(字体标签)
练习:在网页上面显示,我是字体标签,并修改字体为 宋体 颜色为红色。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>1.font标签.html</title>
</head>
<body>
<!-- 字体标签
在网页上面显示,我是字体标签,并修改字体为 宋体 颜色为红色。
font标签是字体标签,他可以用来修改文本字体,颜色,大小(尺寸)
color属性修改字体颜色
face属性修改字体
size属性修改文本字体大小
-->
<font color="red" face="宋体" size="7">我是字体标签</font>
</body>
</html>
2.特殊字符
需要1:把 < br >换行标签变成文本 转换成字符显示在页面上
空格简记牛逼sp;
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>2.特殊字符.html</title>
</head>
<body>
<!-- 特殊字符
换行标签变成文本 转换成字符显示在页面上
常用的特殊字符
< ======><
> =======>>
空格的特殊字符======>
-->
我是<br>标签<br/>
<font size="7" color="red" face="黑体">臧东坤 好可爱</font>
</body>
</html>
3.标题标签
标题标签是h1到h6
需求1:演示标题1到标题6的
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>3.标题标签.html</title>
</head>
<body>
<!-- 标题标签
显示标题1到标题6的
h1 - h6都是标题标签
h1最大
h6最小
align属性是对齐属性
left左对齐
center中间对齐
right右对齐
-->
<h1 align="left">标题1</h1>
<h2 align="center">标题2</h2>
<h3 align="right">标题3</h3>
<h4>标题4</h4>
<h5>标题5</h5>
<h6>标题6</h6>
</body>
</html>
4.超链接(**重点,必须掌握)
在网页中所有点击后可以跳转的内容都是超链接
需求1:普通的超链接。
target属性可以设置为当前页面跳转,或者新开一页面跳转
href属性设置跳转的链接,网站地址等等。。。。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>4.超链接.html</title>
</head>
<body>
<!-- a标签是 超链接
herf属性设置链接的地址
target属性设置哪一个目标进行跳转
_self 表示当前页面(默认值)
_blank 表示打开新页面来进行跳转
-->
<a href="http://baidu.com">百度</a><br/>
<a href="http://baidu.com" target="_self">百度_self</a><br/>
<a href="http://baidu.com" target="_blank">百度_blank</a><br/>
</body>
</html>
5.列表标签
无序列表(大部分使用),有序列表,定义列表(使用的少)
需求1:使用无序,列表方式,把把东北 F4,赵四,刘能,小沈阳,宋小宝,展示出来
注意:和浏览器有关的或多或少涉及到兼容问题
注意type属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>列表</title>
</head>
<body>
<!-- 列表
需求1:使用无序,列表方式,把把东北 F4,赵四,刘能,小沈阳,宋小宝,展示出来
ul:无序列表
li:是列表项
type属性可以修改列表项前面的符号
ol:有序列表(order list)
li:list item(列表里面的每一项)
-->
<ul>
<li type="none">赵四</li>
<li>刘能</li>
<li>小沈阳</li>
<li>宋小宝</li>
</ul>
</body>
</html>
6.img标签
img 标签可以在 html 页面上显示图片。
需求 1:使用 img 标签显示一张美女的照片。并修改宽高,和边框属性
属性:
img标签是图片标签,用来显示图片
src用来设置图片的路径
width属性设置属性的宽度
height属性设置图片的高度
border属性设置图片的边框大小
alt属性设置当前路径找不到时要显示的信息
注意:
html中的路径问题写法
web中的路径分为两种:相对路径,绝对路径
相对路径:
一个点:. 表示当前文件所在的目录
两个点:.. 表示当前文件所在的上一级目录
文件名 表示当前文件所在目录的文件,相当于./ (./可以省略)
绝对路径:
正确格式是:http://ip:port/工程名/资源路径
错误格式:盘符:/目录/文件名
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>5.img标签.html</title>
</head>
<body>
<!--需求 1:使用 img 标签显示一张美女的照片。并修改宽高,和边框属性
img标签是图片标签,用来显示图片
src用来设置图片的路径
width属性设置属性的宽度
height属性设置图片的高度
border属性设置图片的边框大小
alt属性设置当前路径找不到时要显示的信息
web中的路径分为两种:相对路径,绝对路径
相对路径:
一个点:. 表示当前文件所在的目录
两个点:.. 表示当前文件所在的上一级目录
文件名 表示当前文件所在目录的文件,相当于./ (./可以省略)
绝对路径:
正确格式是:http://ip:port/工程名/资源路径
错误格式:盘符:/目录/文件名
-->
<img src="../imgs/1.jpg" width="400" height="450" border="1">
<img src="../imgs/200.jpg" width="400" height="450" border="1" alt="美女找不到了">
<img src="../imgs/3.jpg" width="400" height="450">
<img src="../imgs/4.jpg" width="400" height="450">
<img src="../imgs/5.jpg" width="400" height="450">
<img src="../imgs/6.jpg" width="400" height="450">
<img src="../imgs/7.jpg" width="400" height="450">
</body>
</html>
7.表格标签
注意如下的属性
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>表格标签</title>
</head>
<body>
<!--需求 1:做一个 带表头的 ,三行,三列的表格,并显示边框
需求 2:修改表格的宽度,高度,表格的对齐方式,单元格间距。
table 标签是表格标签
属性:
align设置表格相对于页面的对齐方式
cellspacing 设置单元格间距
border 设置表格标签
width 设置表格宽度
height 设置表格高度
b 标签是加粗标签
tr 是行标签
th 是表头标签(所有的单元格都可以设置为th,居中显示以及加粗)
td 是单元格标签
属性:
align设置单元格文本对齐方式
-->
<table align="center" border="1" width="300" height="300" cellspacing="0">
<tr>
<th>1.1</th></td>
<th>1.2</th>
<th>1.3</th>
</tr>
<tr>
<td>2.1</td>
<td>2.2</td>
<td>2.3</td>
</tr>
<tr>
<td>3.1</td>
<td>3.2</td>
<td>3.3</td>
</tr>
</table>
</body>
</html>
8.跨行跨列表格 (* 次重点,必须掌握 *)
两个属性的使用
- colspan 属性设置跨列 设置那个数字就跨几列
- rowspan 属性设置跨行 设置那个数字就跨几行
- 注意一个点,如果跨行跨列了,我们需要手动减少几行几列
<body>
<!--需求 1:
新建一个五行,五列的表格,第一行,第一列的单元格要跨两列,
第二行第一列的单元格跨两行,第四行第四
列的单元格跨两行两列。
colspan 属性设置跨列
rowspan 属性设置跨行
-->
<table width="500" height="500" cellspacing="0" border="1">
<tr>
<th colspan="2">1.1</th>
<th>1.3</th>
<th>1.4</th>
<th>1.5</th>
</tr>
<tr>
<th rowspan="2">2.1</th>
<th>2.2</th>
<th>2.3</th>
<th>2.4</th>
<th>2.5</th>
</tr>
<tr>
<th>3.2</th>
<th>3.3</th>
<th>3.4</th>
<th>3.5</th>
</tr>
<tr>
<th>4.1</th>
<th>4.2</th>
<th>4.3</th>
<th colspan="2" rowspan="2">4.4</th>
</tr>
<tr>
<th>5.1</th>
<th>5.2</th>
<th>5.3</th>
</tr>
</table>
</body>
9.了解iframe框架标签(内嵌窗口)
iframe框架他可以在一个HTML页面上,打来一个小窗口,去加载一个单独的页面
菜单联合使用
使用步骤:
-iframe标签可以在页面上开辟一个小区域显示一个单独的页面
iframe和标签组合使用的步骤
1.在iframe标签中使用name属性定义一个名称
2.在a标签的target属性上设置iframe的name属性值
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>8.iframe标签.html</title>
</head>
<body>
<!--iframe标签可以在页面上开辟一个小区域显示一个单独的页面
iframe和标签组合使用的步骤
1.在iframe标签中使用name属性定义一个名称
2.在a标签的target属性上设置iframe的name属性值
-->
我是一个单独的完整的页面<br/><br/>
<iframe src="3.标题标签.html" width="800" height="300" name="abc"></iframe>
<br/>
<br/>
<ul>
<li><a href="0-标签语法.html" target="abc">0-标签语法.html</a></li>
<li><a href="1.font标签.html" target="abc">1.font标签.html</a></li>
<li><a href="2.特殊字符.html" target="abc">2.特殊字符.html</a></li>
</ul>
</body>
</html>
10.表单标签(重点,必须掌握)
表单会和表格一起使用来解决问题,是排版更加有序。
一般情况下放在表格下面写更好,格式对其一致
一般一行有两个单元格,第一个单元格写提示信息,第二个单元格写我们需要用户去做事
表单标签会涉及到一下几个标签和属性
form标签就是表单
input type=text 是文本输入框 value设置默认显示内容
input type=password 是密码输入框 value设置默认显示内容
input type=“radio” 是单选框 name属性可以对其进行分组 checked=“checked”表示默认选中
input type="checkbox"是复选框 checked=“checked”表示默认选中(可以多个加选项默认)
input type=“reset” 是重置按钮 value属性修改按钮上的文办
input type="submit 是提交按钮 value属性可以修改按钮上的文办
input type=“button” 是按钮 value属性可以修改按钮上的文办
input type=“file” 是文件上传域
input type=“hidden” 是隐藏域 当我们要分送毛蟹信息,而这些信息,不需要用户参与,就可以使用隐藏域(提交的时候同时发送给服务器)
select 标签是下拉列表框
option 标签是下拉列表框中的选项 属性:selected="selected"设置默认选中
textarea 表示多行文本输入框(起始标签和结束标签中的内容是默认值)
rows 属性设置可以显示几行的高度
cols 属性设置每行可以显示几个字符的宽度
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单</title>
</head>
<body>
<!--需求 1:创建一个个人信息注册的表单界面。
包含用户名,密码,确认密码。性别(单选),兴趣爱好(多选),国籍(下拉列表)。
隐藏域,自我评价(多行文本域)。重置,提交。
一般情况下放在表格下面写更好,格式对其一致
一般一行有两个单元格,第一个单元格写提示信息,第二个单元格写我们需要用户去做事
-->
<!--
form标签就是表单
input type=text 是文本输入框 value设置默认显示内容
input type=password 是密码输入框 value设置默认显示内容
input type="radio" 是单选框 name属性可以对其进行分组 checked=“checked”表示默认选中
input type="checkbox"是复选框 checked=“checked”表示默认选中(可以多个加选项默认)
input type="reset" 是重置按钮 value属性修改按钮上的文办
input type="submit 是提交按钮 value属性可以修改按钮上的文办
input type="button" 是按钮 value属性可以修改按钮上的文办
input type="file" 是文件上传域
input type="hidden" 是隐藏域 当我们要分送毛蟹信息,而这些信息,不需要用户参与,就可以使用隐藏域(提交的时候同时发送给服务器)
select 标签是下拉列表框
option 标签是下拉列表框中的选项 属性:selected="selected"设置默认选中
textarea 表示多行文本输入框(起始标签和结束标签中的内容是默认值)
rows 属性设置可以显示几行的高度
cols 属性设置每行可以显示几个字符的宽度
-->
<form>
<h1 align="center">用户注册</h1>
<table align="center">
<tr>
<td>用户名称:</td>
<td><input type="text" value="默认值"/></td>
</tr>
<tr>
<td>用户密码:</td>
<td><input type="password" value="abc"/></td>
</tr>
<tr>
<td>确认密码:</td>
<td><input type="password" value="abc"/></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td>性别:</td>
checked=“checked”表示默认选中(可以多个加选项默认)
<td><input type="radio" name="sex" checked="checked"/>男
<input type="radio" name="sex"/>女
</td>
</tr>
<tr>
<td>兴趣爱好:</td>
checked=“checked”表示默认选中(可以多个加选项默认)
<td><input type="checkbox" checked="checked"/>Java
<input type="checkbox"/>JavaScript
<input type="checkbox"/>C++
</td>
</tr>
<tr>
<td> 国籍:</td>
<td>
<select>
<option>--请选择国籍--</option>
<option selected="selected">中国</option>
<option>美国</option>
<option>日本</option>
</select>
</td>
</tr>
<tr>
<td> 自我评价:</td>
<td><textarea rows="10" cols="20">我是默认值</textarea></td>
</tr>
<tr>
<td> <input type="reset" value="重置"/></td>
<td><input type="submit" value="提交"/></td>
<td><input type="button" value="我是一个按钮"/></td>
<td><input type="file"/></td>
<td> <input type="hidden" name="abc" value="abcValue"/></td>
</tr>
</table>
</form>
</body>
</html>
11表单提交的细节问题分析
单选和多选name属性值需要一样,为了让浏览器知道他们之间谁和谁是一组的
主要问题是虽然内容填好了,但是数据却无法提交到服务器。主要有下面几种情况。
表单在提交的时候,数据没有发送给服务器的三种情况
1.表单项中没有name属性值
2.单选,复选(下拉列表中的option标签)都需要加value属性,以便发送给服务器
3.表单项不在提交的form标签中
此外forme标签的另外两个属性:action和method
<!--form标签是表单标签
action属性设置提交的服务器地址
method属性设置提交的方式GET(默认)或POST
https://www.baidu.com/?abc=abcValue&sex=on{
https://www.baidu.com/ 表示action的属性值(服务器的地址)
? 分隔符
abc=abcValue(隐藏域信息)&sex=on 请求参数(表单的信息)
}
提交的方式分为POST和GET方式
GET请求的特点:
1.浏览器中的地址栏中的地址是:action属性[+?+请求参数]
请求参数的格式是: name=value&name=value&。。。。。(&连字符)
2.不安全不安全
3.他有数据长度的限制
POST请求的特点:
1.浏览器地址栏中只有action属性值,
2.相对于GET请求要安全
3.理论上没有数据长度的限制
标准代码如下(可以提交的服务器)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单</title>
</head>
<body>
<!--form标签是表单标签
action属性设置提交的服务器地址
method属性设置提交的方式GET(默认)或POST
https://www.baidu.com/?abc=abcValue&sex=on{
https://www.baidu.com/ 表示action的属性值(服务器的地址)
? 分隔符
abc=abcValue(隐藏域信息)&sex=on 请求参数(表单的信息)
}
表单在提交的时候,数据没有发送给服务器的三种情况
1.表单项中没有name属性值
2.单选,复选(下拉列表中的option标签)都需要加value属性,以便发送给服务器
3.表单项不在提交的form标签中
GET请求的特点:
1.浏览器中的地址栏中的地址是:action属性[+?+请求参数]
请求参数的格式是: name=value&name=value&。。。。。(&连字符)
2.不安全不安全
3.他有数据长度的限制
POST请求的特点:
1.浏览器地址栏中只有action属性值,
2.相对于GET请求要安全
3.理论上没有数据长度的限制
-->
<form action="http://www.baidu.com" method="get">
<input type="hidden" name="abc" value="abcValue"/>
<h1 align="center">用户注册</h1>
<table align="center">
<tr>
<td>用户名称:</td>
<td><input type="text" name="username" value="默认值"/></td>
</tr>
<tr>
<td>用户密码:</td>
<td><input type="password"name="password" value="abc"/></td>
</tr>
<tr>
<td>确认密码:</td>
<td><input type="password" name="certainpassword" value="abc"/></td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
<tr>
<td>性别:</td>
<td><input type="radio" name="sex" checked="checked" value="boy"/>男
<input type="radio" name="sex" value="girl"/>女
</td>
</tr>
<tr>
<td>兴趣爱好:</td>
<td><input type="checkbox" name="hobby" checked="checked" value="Java"/>Java
<input type="checkbox" name="hobby" value="js"/>JavaScript
<input type="checkbox" name="hobby" value="Cpp"/>C++
</td>
</tr>
<tr>
<td> 国籍:</td>
<td>
<select name="country">
<option value="none">--请选择国籍--</option>
<option value="cn" selected="selected">中国</option>
<option value="usa">美国</option>
<option value="jp">日本</option>
</select>
</td>
</tr>
<tr>
<td> 自我评价:</td>
<td><textarea name="desc" rows="10" cols="20">我是默认值</textarea></td>
</tr>
<tr>
<td> <input type="reset" value="重置"/></td>
<td><input type="submit" value="提交"/></td>
<td><input type="button" value="我是一个按钮"/></td>
<td><input type="file"/></td>
</tr>
</table>
</form>
</body>
</html>
12.其他标签(div span p)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>其他标签</title>
</head>
<body>
<!--
div标签 默认独占一行(无论你数据的长度)
span标签 它的长度时封装数据的长度
p标签 段落标签(默认会在段落的上方或下方空出一行来,如果已经有就不在空出)
-->
<div>div标签1</div>
<div>div标签2</div>
<span>span标签1</span>
<span>span标签2</span>
<p>p标签1</p>
<p>p标签2</p>
</body>
</html>