图片标签:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!-- 演示图片标签 -->
<img src="imgs\\1.jpg" height=200 width=100 border=10 alt="西城男孩" />
</body>
</html>
表格标签:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>表格</title>
</head>
<body>
<table border=1 bordercolor="#0000EE" ceelpadding=10 cellspacing=0 width=500>
<tbody><!-- 表格的下一个标签是tbody,不定义也存在 -->
<tr>
<th rowspan=2>个人信息</th>
<th>张三</th>
</tr>
<tr>
<td>李四</td>
</tr>
</tbody>
</table>
<hr/>
<table border=1 bordercolor="#0000EE" ceelpadding=10 cellspacing=0 width=500>
<tr>
<th colspan=2>个人信息</th>
</tr>
<tr>
<td>张三</td>
<td>李四</td>
</tr>
</table>
<hr/>
<table>
<caption> 表格标题 </caption>
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
<tr>
<td>张三</td>
<td>30</td>
</tr>
</table>
</body>
</html>
列表标签:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!--HTML注释: 演示标签 。
列表标签:<dl>
上层项目:<dt>
下层项目: <dd>:有自动缩进的效果
-->
<dl>
<dt> 上层项目 </dt>
<dd> 下层项目</dd>
<dd> 下层项目</dd>
<dd> 下层项目</dd>
<dd> 下层项目</dd>
</dl>
<hr/>
<!-- 有序和无序的项目列表
有序:<ol>
无序:<ul>
条目封装都用<li>
-->
<ol type="a">
<li>有序</li>
<li>有序</li>
<li>有序</li>
<li>有序</li>
</ol>
<ul>
<li>无序</li>
<li>无序</li>
<li>无序</li>
<li>无序</li>
</ul>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!--
定位标签 -->
<a name=top>顶部位置</a>
<hr/>
<img src="11.jpg" height=900 width=400 border=10/>
<hr/>
<a name=center>中间位置</a>
<hr/>
<img src="11.jpg" height=900 width=400 border=10/>
<a href="#top">回到顶部位置</a>
<a href="#center">回到中间位置</a>
</body>
</html>
超连接:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!--
超链接:
作用:连接资源
当有了href属性才有了点击效果,属性不同,解析方式不同
如果在该值中没有指定任何协议,解析时,是按照默认的协议来解析的,默认协议是file协议
-->
<a href="http://www.sina.com" target="_blank">点击</a>
<hr/>
<a href="javascript:void(0)"onclick="alert{'我谈'})">这是一个超链接</a>
</body>
</html>
框架:
framedemo.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<!-- 定义框架,使用标签 frameset-->
<frameset rows="30%,*">
<frame src="top.html" name="top""/>
<frameset cols="30%,*">
<frame src="left.html" name="left"/>
<frame src="right.html" name="right"/>
</frameset>
</frameset>
<body>
</body>
</html>
left.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>左边栏连接</h3>
<a href="../img.html" target="right"> 连接一 </a>
<a href="../link.html" target="right"> 连接二</a>
<a href="../table.html" target="right"> 连接三 </a>
</body>
</html>
right.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2>内容显示区域</h2>
</body>
</html>
top.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>这是我的网站logo</h1>
</body>
</html>
iframe.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<iframe src="../img.html" height=500 width=400> 这是一个画中画标签 </iframe>
</body>
</html>
表单:
get和post提交的区别:
1.get:提交的信息都放到地址栏中
post:提交的信息不放到地址栏中
2.get:对于敏感信息不安全
post:对于敏感信息安全
3.get:对于大数据不行
post:大数据可以
4.get:将消息封装到了请求行中
post:将消息封装到了请求体中
在服务端的一个区别:
如果出现将中文提交到Tomcat服务器,服务器会默认用ISO8859-1进行解码会出现乱码。
解决方式是用ISO8859-1进行编码,在用指定的中文码表解码即可。
这种方法对get和post提交都有效。
但是对于post提交方式中的中文,还有另外一种解决方式,就是直接使用服务器端的一个对象
request对象的setCharacterEncoding方法直接设置指定的中文码表就可以将中文数据解析出来。
这个方法只对请求体中的数据进行解码。
综上所述:表单提交,建议用psot。
和服务端交互的三种方式:
1.地址栏输入url地址:get
2.超链接:get
3.提交表单:get和post
如果在客户端做了进行增强型的校验(只要有一个组件的内容是错误的,是无法继续提交的,只有全队才可以提交,
问:服务端接受到数据后,还需要校验,吗?
需要:为了安全。如果服务端做了增强型的校验,客户端还需要检验吗?
需要:因为要提高用户的上网体验效果,减轻服务器的压力。
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>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<!-- 如果给服务器端提交数据,表单组件中必须有name和value属性,用于数据端获取数据方便 -->
<form>
输入名称:<input type="text" name="user" value=""/><br/>
输入密码:<input type="password" name="psw"/><br/>
性别选择:<input type="radio" name="sex" value="nan">男
<input type="radio" name="sex" value="nv" checked="checked"/>女<br/>
选择技术:<input type="checkbox" name="tec" value="java"/>JAVA
<input type="checkbox" name="tec" value="heml"/>HTML
<input type="checkbox" name="tec" value="css"/>CSS<br/>
选择文件:<input type="file" name="file"/><br/>
一个图片:<input type="image" src="11.jpg"/><br/>
<!-- 数据不需要客户端知道,但是可以将其提交服务端。 -->
隐藏组件:<input type="hidden" name="myke" value="myvalue"/><br/>
一个按钮:<input type="button" value="有个按钮" onclick="alert('有个按钮')"/><br/>
<select name="country">
<option value="non">选择国家</option>
<option value="cn" selected="selected">中国</option>
<option value="us">美国</option>
<option value="ff">法国</option>
</select><br/>
<textarea rows="10" cols="10" name="text"></textarea>
<br/>
<input type="reset" value="清除数据"/><input type="submit" value="提交数据"/>
</form>
</body>
</html>
格式化表单:
<!DOCTYPE html>
<html>
<head>
<meta charset="GBK">
<title>Insert title here</title>
</head>
<body>
<!-- 表单格式化 -->
<form action="http://192.168.1.205:9090" method="post">
<table border="1" bordercolor="#0000ff" cellpadding="10" cellspacing="0" width="500">
<tr>
<th colspan=2> 注册表单 </th>
</tr>
<tr>
<td> 输入名称:</td>
<td> <input type="text" name="use"/> </td>
</tr>
<tr>
<td> 输入密码: </td>
<td> <input type="password" name="psw"/> </td>
</tr>
<tr>
<td> 性别选择: </td>
<td> <input type="radio" name="sex" value="nan"/>男 </td>
<td> <input type="radio" name="sex" value="nv" checked="checked"/>女</td>
</tr>
<tr>
<td> 选择技术: </td>
<td> <input type="checkbox" name="tec" value="java"/> JAVA </td>
<td> <input type="checkbox" name="tec" value="heml"/> HTML </td>
<td> <input type="checkbox" name="tec" value="css"/> CSS </td>
</tr>
<tr>
<td> 选择文件 </td>
<td> <input type="file" name="file"/> </td>
</tr>
<tr>
<td> 选择国家 </td>
<td>
<select name="country">
<option value="cn" selected="selected">中国 </option>
<option value="us">美国</option>
<option value="uk">英国</option>
</select>
</td>
</tr>
<tr>
<th colspan=2>
<input type="reset" value="清除数据"/>
<input type="submit" value="提交数据"/>
</th>
<td> </td>
</tr>
</table>
</form>
</body>
</html>
服务端:
package cn.itcast.server;
import java.io.IOException;
import java.io.InputStream;
import java.io.PrintStream;
import java.net.ServerSocket;
import java.net.Socket;
public class RegServer {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
ServerSocket ss=new ServerSocket(9090);
Socket s=ss.accept();
System.out.println(s.getInetAddress().getHostAddress());
InputStream ins=s.getInputStream();
byte[]buff=new byte[1024];
int len=ins.read(buff);
System.out.println(new String(buff, 0, len));
PrintStream out=new PrintStream(s.getOutputStream());
out.print("<font color='red' size='7' >okkkk</font>");
ss.close();
out.close();
}
}
其他标签:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<pre>
class Demo
{
public static void main(String[] args)
{
System.out.println("hello");
}
}
</pre>
<hr/>
<marquee direction="down" behavior="slide"> 飞飞飞</marquee>
<b>这是</b><i>演示</i><u>其他</u>标签
x<sub>2</sub>x<sup>2</sup>
</body>
</html>
end.........
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<div>这是一个div区域1</div>
<div>这是一个div区域2</div>
<span>这是一个span区域1</span>
<span>这是一个span区域2</span>
<p>这是一个段落1</p>
<p>这是一个段落2</p>
<!--
div 标签默认独占一行
span 标签它的长度是封装数据的长度
p 段落标签默认会在段落的上方或下方各空出一行来(如果已有就不再空)
-->
<!--
标签分为两大类:
1.块级标签(元素):标签结束后都有换行。div p dl table title ol ul
2.行内标签(元素):标签结束后没有换行。font span img input select a
-->
</body>
</html>