HTML表单创建学习

文章目录

  • 1、创建HTML框架
  • 2.body标签CSS
  • 3.表单创建
    • 3.1、添加fieldset与label标签
    • 3.2、为label标签添加css样式
    • 3.3、添加input标签
    • 3.4、添加提交按钮
    • 3.5、在input标签中添加required
    • 3.6、添加minlength属性
    • 3.7、pattern属性
    • 3.8、设置表单单选按钮无法同时选中
    • 3.9、添加链接
    • 3.10、添加图片上传表单
    • 3.11、添加年龄限制属性
    • 3.12、添加下拉列表
  • 4.完整代码


1、创建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 rel="stylesheet" href="styles.css" />
</head>
<body></body>
</html>

2.body标签CSS

body{width:100%;height:100vh;margin:0;background-color:#1b1b32;color:#f5f6f7;}

3.表单创建

3.1、添加fieldset与label标签

fieldset>标签:用于将表单中的相关元素进行分组,通常与 legend标签一起使用,以提供关于该组的描述。fieldset标签的主要目的是对表单元素进行逻辑分组,以提高可读性和可用性。

label 标签:用于为表单元素(如输入框、单选按钮等)定义文本描述。label 标签的主要目的是提高用户体验,因为它允许用户通过单击标签文本来选择表单元素,而不仅仅是单击表单元素本身。此外,屏幕阅读器和其他辅助技术也可以使用 label 标签来为用户提供有关表单元素的更多信息。

 <fieldset><label>Enter Your First Name: </label><label>Enter Your Last Name: </label><label>Enter Your Email: </label><label>Create a New Password: </label></fieldset>

3.2、为label标签添加css样式

label{display: block;margin : 0.5rem 0;}

3.3、添加input标签

 <fieldset><label for="first-name">Enter Your First Name:</label><input id="first-name" type="text" /><label for="last-name">Enter Your Last Name:</label><input id="last-name" type="text" /><label for="email">Enter Your Email:</label><input id="email" type="email" /><label for="new-password">Create a New Password:</label><input id="new-password" type="password" /></fieldset>

3.4、添加提交按钮

<input type="submit" value="Submit"/>

3.5、在input标签中添加required

required属性的作用是指定表单元素必须填写,不能留空。当用户提交表单时,如果该表单元素未填写,浏览器会阻止表单提交并显示错误提示。

<fieldset><label for="first-name">Enter Your First Name:</label><input id="first-name" type="text"  required/><label for="last-name">Enter Your Last Name:</label><input id="last-name" type="text"  required/><label for="email">Enter Your Email:</label><input id="email" type="email"  required/><label for="new-password">Create a New Password:</label><input id="new-password" type="password"  required/></fieldset>

3.6、添加minlength属性

minlength属性的作用是指定表单元素输入的最小长度,即用户必须输入至少指定长度的字符才能通过验证。如果用户输入的字符数小于指定的最小长度,浏览器会阻止表单提交并显示错误提示。

<input id="new-password" type="password"  required minlength="8"/>

在这里插入图片描述

3.7、pattern属性

pattern属性的作用是指定表单元素输入的模式,即用户必须按照指定的模式输入内容才能通过验证。pattern属性使用正则表达式来描述输入的模式,如果用户输入的内容与正则表达式不匹配,浏览器会阻止表单提交并显示错误提示。

<input id="new-password" type="password"  required pattern="[a-z0-5]{8,}"/>

3.8、设置表单单选按钮无法同时选中

 <fieldset><legend>Account type (required)</legend><label for="personal-account"><input type="radio" name="account-type" checked  id="personal-account" /> Personal</label><label for="business-account"><input type="radio" name="account-type" id="business-account" /> Business</label></fieldset><fieldset></fieldset><label for="terms-and-conditions"><input type="checkbox" id="terms-and-conditions" required></label><input type="submit" value="Submit"/>

在这里插入图片描述

3.9、添加链接

 <label for="terms-and-conditions"><input type="checkbox" id="terms-and-conditions" required>I accept the <a href="https://www.freecodecamp.org/news/terms-of-service/">terms and conditions</a></label>

在这里插入图片描述

3.10、添加图片上传表单

  <fieldset><label>Upload a profile picture: <input type="file"></label></fieldset>

在这里插入图片描述

3.11、添加年龄限制属性

<label>Input your age (years): <input type="number" min="13" max="120" /></label>

在这里插入图片描述

3.12、添加下拉列表

<fieldset><label for="profile-picture">Upload a profile picture:</label><input type="file" id="profile-picture" /><label for="age">Input your age (years):</label><input type="number" id="age" min="13" max="120" /><label for="referrer">How did you hear about us?</label><select id="referrer"><option value="">(select one)</option><option value="1">freeCodeCamp News</option><option value="2">freeCodeCamp YouTube Channel</option><option value="3">freeCodeCamp Forum</option><option value="4">Other</option></select><label for="bio">Provide a bio:</label><textarea id="bio"></textarea>
</fieldset>

在这里插入图片描述

4.完整代码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><title>Registration Form</title><link rel="stylesheet" href="styles.css" /></head><body><h1>Registration Form</h1><p>Please fill out this form with the required information</p><form method="post" action='https://register-demo.freecodecamp.org'><fieldset><label for="first-name">Enter Your First Name: <input id="first-name" name="first-name" type="text" required /></label><label for="last-name">Enter Your Last Name: <input id="last-name" name="last-name" type="text" required /></label><label for="email">Enter Your Email: <input id="email" name="email" type="email" required /></label><label for="new-password">Create a New Password: <input id="new-password" name="new-password" type="password" pattern="[a-z0-5]{8,}" required /></label></fieldset><fieldset><legend>Account type (required)</legend><label for="personal-account"><input id="personal-account" type="radio" name="account-type" class="inline" checked /> Personal</label><label for="business-account"><input id="business-account" type="radio" name="account-type" class="inline" /> Business</label></fieldset><fieldset><label for="profile-picture">Upload a profile picture: <input id="profile-picture" type="file" name="file" /></label><label for="age">Input your age (years): <input id="age" type="number" name="age" min="13" max="120" /></label><label for="referrer">How did you hear about us?<select id="referrer" name="referrer"><option value="">(select one)</option><option value="1">freeCodeCamp News</option><option value="2">freeCodeCamp YouTube Channel</option><option value="3">freeCodeCamp Forum</option><option value="4">Other</option></select></label><label for="bio">Provide a bio:<textarea id="bio" name="bio" rows="3" cols="30" placeholder="I like coding on the beach..."></textarea></label></fieldset><label for="terms-and-conditions"><input class="inline" id="terms-and-conditions" type="checkbox" required name="terms-and-conditions" /> I accept the <a href="https://www.freecodecamp.org/news/terms-of-service/">terms and conditions</a></label><input type="submit" value="Submit" /></form></body>
</html>
body {width: 100%;height: 100vh;margin: 0;background-color: #1b1b32;color: #f5f6f7;font-family: Tahoma;font-size: 16px;
}h1, p {margin: 1em auto;text-align: center;
}form {width: 60vw;max-width: 500px;min-width: 300px;margin: 0 auto;padding-bottom: 2em;
}fieldset {border: none;padding: 2rem 0;border-bottom: 3px solid #3b3b4f;
}fieldset:last-of-type {border-bottom: none;
}label {display: block;margin: 0.5rem 0;
}input,
textarea,
select {margin: 10px 0 0 0;width: 100%;min-height: 2em;
}input, textarea {background-color: #0a0a23;border: 1px solid #0a0a23;color: #ffffff;
}.inline {width: unset;margin: 0 0.5em 0 0;vertical-align: middle;
}input[type="submit"] {display: block;width: 60%;margin: 1em auto;height: 2em;font-size: 1.1rem;background-color: #3b3b4f;border-color: white;min-width: 300px;
}input[type="file"] {padding: 1px 2px;
}.inline{display: inline; 
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/692123.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

三、RocketMQ应用

RocketMQ应用 一、测试环境工程准备二、消息响应1.消息发送的状态-SendStatus2.producer消息Id-msgId3.broker消息Id-offsetMsgId 三、普通消息1.消息发送分类1.1 同步发送消息1.2 异步发送消息1.3 单向发送消息 2.代码举例2.1 同步消息发送生产者2.2 异步消息发送生产者2.3 单…

AI应用案例:新闻文本分类

随着科学技术的不断发展&#xff0c;互联网技术得以快速的发展和普及&#xff0c;并已在各行各业得到了广泛的应用&#xff0c;从中致使了网络上的信息呈现出爆炸式的增长状态&#xff0c;达到了“足不出户&#xff0c;万事皆知”的境况&#xff0c;充分体现了互联网新闻给生活…

半小时搞懂STM32面经知识点——IIC

1.IIC 1.1什么是IIC&#xff1f; 同步半双工通信协议&#xff0c;适用于小数据和短距离传输。 1.2 IIC需要几条线&#xff1f; IIC总共有2条通信总线&#xff08;SDA,SCL&#xff09;&#xff0c;SCL为时钟同步线&#xff0c;用于主机和从机间数据同步操作&#xff1b;SDA为…

第3周 后端微服务基础架构与前端项目联调配备

第3周 后端微服务基础架构与前端项目联调配备 1. 微服务项目层次设计与Maven聚合1.1 项目层次设计1.2 父项目pom1.2.1 打包方式 1.3 创建通用 ************************************************************************************** 1. 微服务项目层次设计与Maven聚合 1.1…

从关键新闻和最新技术看AI行业发展(2024.4.22-5.5第二十二期) |【WeThinkIn老实人报】

写在前面 【WeThinkIn老实人报】旨在整理&挖掘AI行业的关键新闻和最新技术&#xff0c;同时Rocky会对这些关键信息进行解读&#xff0c;力求让读者们能从容跟随AI科技潮流。也欢迎大家提出宝贵的优化建议&#xff0c;一起交流学习&#x1f4aa; 欢迎大家关注Rocky的公众号&…

FPGA相关论文阅读

一、Achieving 100Gbps Intrusion Prevention on a Single Server 论文名称中文翻译&#xff1a;在单台服务器上实现100Gbps吞吐量的入侵防御检测。 文章中的Mixed-1和Norm-1 二、Distributed Password Hash Computation on Commodity Heterogeneous Programmable Platforms…

# 从浅入深 学习 SpringCloud 微服务架构(十七)--Spring Cloud config(1)

从浅入深 学习 SpringCloud 微服务架构&#xff08;十七&#xff09;–Spring Cloud config&#xff08;1&#xff09; 一、配置中心的 概述 1、配置中心概述 对于传统的单体应用而言&#xff0c;常使用配置文件来管理所有配置&#xff0c;比如 SpringBoot 的 application.y…

制作绿色便携式Chrome浏览器

准备环境 chrome离线解压包7zip解压缩软件Chrome Portable便携版启动程序 一、获取Chrome离线解压包 获取官方的离线下载包&#xff0c;使用7zip软件打开压缩包。如果里面看到的事102~表示是离线安装包&#xff0c;如果是chrome.7z表示是离线解压包。 如果是解压包的话&…

【云原生】 Kubernetes核心概念

目录 引言 一、部署方式回溯 &#xff08;一&#xff09;传统部署时代 &#xff08;二&#xff09;虚拟化部署时代 &#xff08;三&#xff09;容器部署时代 二、Kubernetes基本介绍 &#xff08;一&#xff09;为什么使用k8s &#xff08;二&#xff09;主要功能 &am…

ppt保存文件奇怪问题

我发现ppt中的形状保存成jpg,png和pdf时&#xff0c;格式不一样 比如 当右键单击时&#xff0c;然后选择另存为图片 png格式 jpg格式 pdf格式 感觉还是很奇怪&#xff0c;就pdf的格式比较靠谱一点

外观模式详解

外观模式 1 概述 有些人可能炒过股票&#xff0c;但其实大部分人都不太懂&#xff0c;这种没有足够了解证券知识的情况下做股票是很容易亏钱的&#xff0c;刚开始炒股肯定都会想&#xff0c;如果有个懂行的帮帮手就好&#xff0c;其实基金就是个好帮手&#xff0c;支付宝里就…

体验MouseBoost PRO,让Mac操作更高效

还在为Mac的右键功能而烦恼吗&#xff1f;试试MouseBoost PRO for Mac吧&#xff01;这款强大的鼠标右键增强软件&#xff0c;能让你通过简单操作即可激活多种实用功能&#xff0c;让你的工作变得更加轻松。其高度定制化的设计&#xff0c;更能满足你的个性化需求。赶快下载体验…