今天来设计一个可以交互的退款表单
效果图如下
代码
知识点
<form>标签
为了实现用户与Web服务器的交互,需要让表单中的数据传送给服务器,这就必须定义表单域。定义表单域与<table>标签定义表格类似,HTML中<form>标签用于定义表单域,即创建一个表单,用来实现用户信息的收集和传递,<form></form>标签中的所有内容都会提交给服务器。
语法格式如下:
<form action="URL地址" method="数据提交方式">
表单元素和提示信息
</form>
例子:
<form class="biaodan" action="# " method="get" target="_self" enctype="multipart/form-data">
action属性可定义表单数据的提交地址,即一个URL地址。HTML表单要想和服务器进行连接,就需要在action属性上设置一个URL。
method属性规定如何发送表单数据(表单数据发送到action属性所规定的页面)。表单数据有常用的get(默认)和post两种提交方式。
target属性定义提交地址的打开方式,常用的打开方式有_self(默认)和_blank。
enctype属性规定在发送到服务器之前应该如何对表单数据进行编码。
<input>标签
<input>标签用于搜集用户信息,是一个单标签。网页中经常会包含有单行文本框、密码文本框、单选框、提交按钮等,要想定义这些表单元素就需要使用<input>标签。<input>标签通过type属性的取值不同,可以展现出不同的表单控件类型,如text单行文本框、password密码文本框、submit重置按钮等。
语法格式如下
<input type="控件类型">
html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link href="css/test.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<body>
<!-- 整个退款表单 -->
<div class="apply">
<!-- 无序列表 -->
<ul class="bar">
<!-- <span> 是HTML中的内联元素标签。它用于定义文档中的短小文本片段或行内元素,并能够通过CSS样式表进行定制和修饰。 -->
<li><a href="#"><span class="order">1</span>买家申请退款</a></li>
<li><a href="#"><span class="order">2</span>卖家处理申请</a></li>
<li><a href="#"><span class="order">3</span>买家退货</a></li>
<li><a href="#"><span class="order">4</span>退货完毕</a></li>
</ul>
<div class="details">
<!-- 添加表单域,并在<form>标签中添加相关属性 -->
<!-- 使用文件域时,<form>标签的method属性值必须设置成post,enctype属性值必须设置成multipart/form-data。 -->
<form class="biaodan" action="# " method="get" target="_self" enctype="multipart/form-data">
<!-- 退款商品 -->
<div class="contain">
<p class="goods">退款商品:<img src="images/商品.png" alt="图片未加载" width="400" height="100"></p>
</div>
<div class="contain">
<p class="serve">服务类型:
<label><input type="radio" name="refund" id="allow">仅退款</label>
<label><input type="radio" name="refund" id="full">退货退款</label>
</p>
</div>
<div class="contain">
<p class="reason">退款原因:
<select name="item">
<option>多拍,错拍,不想要</option>
<option>没事找事</option>
</select>
</p>
</div>
<div class="contain">
<p class="count">退款件数:
<input type="number" name="nub" value="1">
<!-- value数值等于1,数值默认为1 -->
</p>
</div>
<div class="contain">
<p class="money">退款金额:
<!-- required是一个布尔属性,表示输入框内必须填写,否则无法提交 -->
<input type="hidden" name="cash" value="">
<input type="text" name="num" required>
<span class="pay"> (*填写实际支付金额)
</p>
</div>
<div class="contain">
<p class="explain">退款说明:
<textarea name="content" placeholder="退款说明"></textarea>
<!-- <textarea> 是 HTML 中用于创建多行文本输入框的元素标签。 -->
<!-- name="content": 定义该文本区域的名称,用于在表单提交时与其关联。 -->
<!-- placeholder="退款说明": 设置一个占位符(灰色提示文字),以指示用户在文本区域中所需的输入或内容的示例。 -->
</p>
</div>
<div class="contain">
<p class="file">上传图片:
<a class="upload">
<input type="file" name="up" accept="image/*" multiple>
<!-- type="file": 定义输入字段为文件上传类型。accept="image/*": 限制用户只能选择图像文件进行上传。multiple: 允许用户选择并上传多个文件,而不仅仅是单个文件。 -->
</a>
</p>
</div>
<div class="contain">
<p class="data">更新时间:
<input type="datetime-local" name>
<div class="photo">
<input type="image" src="images/tijiao.png" value="提交">
</div>
</p>
</div>
</form>
</div>
</div>
</body>
</html>
css
*{
margin:0%;
padding:0%;
}
header{
width: 96%;
height: 100px;
/* margin: 0 auto目的是让div进行左右居中,0表示上下边缘为0,auto表示左右自动; */
margin: 10px auto;
border: 1px solid red;
}
.center{
width: 96%;
height: 640px;
margin: 0 auto;
border: 1px solid red;
}
.c_left{
width: 34%;
height: 620px;
/* 浮动要写在你需要浮动的div上 */
float: left;
margin-left: 1%;
margin-top: 10px;
/* margin-top: 5px; */
border: 1px solid red;
}
.c_right{
margin-top: 10px;
width: 61%;
height: 620px;
border: 1px solid red;
margin-left: 20px;
float: left;
}
.c_left_one{
background-color: bisque;
width: 95%;
height: 300px;
margin: 0 auto;
}
.c_left_two{
background-color: yellowgreen;
width: 95%;
height: 290px;
margin: 0 auto;
}
.c_right_one{
margin-top: 0px;
width: 95%;
height: 300px;
background-color:aqua;
float: left;
margin:10px 16px 10px 12px;
}
.c_right_two{
margin-top: 0px;
width: 95%;
height: 290px;
background-color:yellow;
float: left;
margin: 0px 12px 10px 12px;
}
ul li{
list-style-type: none;
margin-top: 10px;
margin-left: 10px;
}
.font-lr{
font-weight: bold;
}
footer{
width: 96%;
height: 100px;
/* margin: 0 auto目的是让div进行左右居中,0表示上下边缘为0,auto表示左右自动; */
margin: 10px auto;
border: 1px solid red;
}
.bigframe{
width: 100%;
height: 900px;
/* margin: 0 auto目的是让div进行左右居中,0表示上下边缘为0,auto表示左右自动; */
margin: 0 auto;
border: 1px solid red;
}
header ul li{
/* margin-top: 10px;
margin-left: 800px; */
font-size: 4rem;
/* margin: 0 auto; */
}
项目所用图片
链接:https://pan.baidu.com/s/1E_gGYXlKFML7xMdP2ICL8A
提取码:1234