2025-09-04 HTML3——区块布局与表单

文章目录

  • 1 块元素与行内元素
    • 1.1 块元素 (Block-level Element)
    • 1.2 行内元素 (Inline Element)
  • 2 HTML 布局
    • 2.1 使用 `<div>` 元素
    • 2.2 使用 `<table>` 元素
  • 3 表单 (`<form>`)
    • 3.1 输入域(`<input>`)
      • 3.1.1 文本域(Text Fields)
      • 3.1.2 密码(password)
      • 3.1.3 单选按钮(Radio Buttons)
      • 3.1.4 复选框(Checkboxes)
      • 3.1.5 提交按钮(Submit)
    • 3.2 文本域(`<textarea>`)
    • 3.3 标签(`<label>`)
    • 3.4 分组输入域(`<fieldset>`)
    • 3.5 下拉列表(`<select>`)
    • 3.6 示例

1 块元素与行内元素

大多数 HTML 元素被定义为块元素行内元素(内联元素)

1.1 块元素 (Block-level Element)

块元素在浏览器显示时,通常会以新行来开始(和结束)。

  • 特性
    1. 独占一行:无论其内容多少,块元素总是会从新的一行开始,并占据其父容器的全部可用宽度。
    2. 可以设置宽高:你可以为块元素设置 width(宽度)和 height(高度)。
    3. 可以包含其他元素:块元素通常作为其他元素的容器,可以包含行内元素和其它的块元素。
  • 常见示例
    • 标题<h1>, <h2>, <h3>, <h4>, <h5>, <h6>
    • 段落<p>
    • 列表<ul>, <ol>, <li>
    • 表格<table>
    • 分隔块<div>

<div> 元素是最常用的块元素,它没有任何特定的语义,常用于组织和布局网页内容。

<p>这是一些文本。</p><div style="color:#0000FF"><h3>这是一个在 div 元素中的标题。</h3><p>这是一个在 div 元素中的文本。</p>
</div><p>这是一些文本。</p>
image-20250904014158278

1.2 行内元素 (Inline Element)

内联元素在显示时通常不会以新行开始。

  • 特性
    1. 不独占一行:多个行内元素可以并排显示在同一行上。
    2. 宽高无效widthheight 属性对行内元素不起作用。其宽度和高度由其内容决定。
    3. 不能包含块元素:行内元素通常只能包含文本或其它的行内元素。
  • 常见示例
    • 超链接<a>
    • 图像<img>
    • 文本格式化<b>, <i>, <strong>, <em>
    • 跨度<span><span> 是最常用的行内元素,与 <div> 类似,它也没有特定的语义,常用于对行内的一小部分文本进行样式修改。)

<span> 元素是最常用的行内元素,与 <div> 类似,它也没有特定的语义,常用于对行内的一小部分文本进行样式修改。

<p>我的母亲有 <span style="color:blue;font-weight:bold">蓝色</span> 的眼睛,我的父亲有 <span style="color:darkolivegreen;font-weight:bold">碧绿色</span> 的眼睛。</p>
image-20250904014316385

2 HTML 布局

大多数网站会把内容安排到多个列中(就像杂志或报纸那样)。

可以使用 <div> 或者 <table> 元素来创建多列。

2.1 使用 <div> 元素

<div> 元素是用于分组 HTML 元素的块级元素。

下面的例子使用五个 <div> 元素来创建多列布局:

<!DOCTYPE html>
<html><head><meta charset="utf-8" /><title>菜鸟教程(runoob.com)</title></head><body><div id="container" style="width: 500px"><div id="header" style="background-color: #ffa500"><h1 style="margin-bottom: 0">主要的网页标题</h1></div><divid="menu"style="background-color: #ffd700;height: 200px;width: 100px;float: left;"><b>菜单</b><br />HTML<br />CSS<br />JavaScript</div><divid="content"style="background-color: #eeeeee;height: 200px;width: 400px;float: left;">内容在这里</div><divid="footer"style="background-color: #ffa500; clear: both; text-align: center">版权 © runoob.com</div></div></body>
</html>
image-20250904014624815

2.2 使用 <table> 元素

使用 HTML <table> 标签是创建布局的一种简单的方式。

<!DOCTYPE html>
<html><head><meta charset="utf-8" /><title>菜鸟教程(runoob.com)</title></head><body><table width="500" border="0"><tr><td colspan="2" style="background-color: #ffa500"><h1>主要的网页标题</h1></td></tr><tr><td style="background-color: #ffd700; width: 100px"><b>菜单</b><br />HTML<br />CSS<br />JavaScript</td><td style="background-color: #eeeeee; height: 200px; width: 400px">内容在这里</td></tr><tr><td colspan="2" style="background-color: #ffa500; text-align: center">版权 © runoob.com</td></tr></table></body>
</html>
image-20250904014823945

3 表单 (<form>)

HTML 表单表示文档中的一个区域,此区域包含交互控件,将用户收集到的信息发送到 Web 服务器。

HTML 表单通常包含各种输入字段、复选框、单选按钮、下拉列表等元素。

我们可以使用 <form> 标签来创建表单:

<form>. input 元素 .</form>

多数情况下被用到的表单标签是输入标签 <input>,输入类型由 type 属性定义。

3.1 输入域(<input>

3.1.1 文本域(Text Fields)

文本域通过 <input type="text"> 标签来设定,当用户要在表单中键入字母、数字等内容时,就会用到文本域。

<form>First name: <input type="text" name="firstname"><br>Last name: <input type="text" name="lastname">
</form>
image-20250904015238121

表单本身并不可见。同时,在大多数浏览器中,文本域的默认宽度是 20 个字符。

3.1.2 密码(password)

密码字段通过标签 <input type="password"> 来定义:

<form>Password: <input type="password" name="pwd">
</form>
image-20250904015413182

密码字段字符不会明文显示,而是以星号 ***** 或圆点 . 替代。

3.1.3 单选按钮(Radio Buttons)

<input type="radio"> 标签定义了表单的单选框选项:

<form action=""><input type="radio" name="sex" value="male"><br><input type="radio" name="sex" value="female"></form>
image-20250904015458431

3.1.4 复选框(Checkboxes)

<input type="checkbox"> 定义了复选框,可以选取一个或多个选项:

<form><input type="checkbox" name="vehicle[]" value="Bike">我喜欢自行车<br><input type="checkbox" name="vehicle[]" value="Car">我喜欢小汽车
</form>
image-20250904015543534

3.1.5 提交按钮(Submit)

<input type="submit"> 定义了提交按钮。当用户单击确认按钮时,表单的内容会被传送到服务器。表单的动作属性 action 定义了服务端的文件名。action 属性会对接收到的用户输入数据进行相关的处理:

<form name="input" action="html_form_action.php" method="get">Username: <input type="text" name="user"><input type="submit" value="Submit">
</form>
image-20250904015644100

假如您在上面的文本框内键入几个字母,然后点击确认按钮,那么输入数据会传送到 html_form_action.php 文件,该页面将显示出输入的结果。

以上实例中有一个 method 属性,它用于定义表单数据的提交方式,可以是以下值:

  • post:指的是 HTTP POST 方法,表单数据会包含在表单体内然后发送给服务器,用于提交敏感数据,如用户名与密码等。
  • get:默认值,指的是 HTTP GET 方法,表单数据会附加在 action 属性的 URL 中,并以 ? 作为分隔符,一般用于不敏感信息,如分页等。例如:https://www.runoob.com/?page=1,这里的 page=1 就是 get 方法提交的数据。

3.2 文本域(<textarea>

<textarea> 标签定义一个多行的文本输入控件。

文本区域中可容纳无限数量的文本,其中的文本的默认字体是等宽字体(通常是 Courier)。

可以通过 cols 和 rows 属性来规定 textarea 的尺寸大小,不过更好的办法是使用 CSS 的 height 和 width 属性。

<textarea rows="10" cols="30">我是一个文本框。
</textarea>
image-20250904020926957

3.3 标签(<label>

<label> 标签为 input 元素定义标注(标记)。label 元素不会向用户呈现任何特殊效果。不过,它为鼠标用户改进了可用性。如果您在 label 元素内点击文本,就会触发此控件。就是说,当用户选择该标签时,浏览器就会自动将焦点转到和标签相关的表单控件上。

<label> 标签的 for 属性可把 label 绑定到另外一个元素,应当与相关元素的 id 属性相同。

<form action="demo_form.php"><label for="male">Male</label><input type="radio" name="sex" id="male" value="male"><br><label for="female">Female</label><input type="radio" name="sex" id="female" value="female"><br><br><input type="submit" value="提交">
</form>
image-20250904021122143

3.4 分组输入域(<fieldset>

<fieldset> 标签可以将表单内的相关元素分组,会在相关表单元素周围绘制边框。

<legend> 元素为 <fieldset> 元素定义标题。

<form><fieldset><legend>Personalia:</legend>Name: <input type="text"><br>Email: <input type="text"><br>Date of birth: <input type="text"></fieldset>
</form>
image-20250904021340814

3.5 下拉列表(<select>

<select> 元素用来创建下拉列表。

<select> 元素中的 <option> 标签定义了列表中的可用选项。

<select><option value="volvo">Volvo</option><option value="saab">Saab</option><option value="opel">Opel</option><option value="audi">Audi</option>
</select>
image-20250904021558017

3.6 示例

以下是一个简单的HTML表单的例子:

<!DOCTYPE html>
<html><head><meta charset="utf-8" /><title>菜鸟教程(runoob.com)</title></head><body><form action="/" method="post"><!-- 文本输入框 --><label for="name">用户名:</label><input type="text" id="name" name="name" required /><br /><!-- 密码输入框 --><label for="password">密码:</label><input type="password" id="password" name="password" required /><br /><!-- 单选按钮 --><label>性别:</label><input type="radio" id="male" name="gender" value="male" checked /><label for="male"></label><input type="radio" id="female" name="gender" value="female" /><label for="female"></label><br /><!-- 复选框 --><input type="checkbox" id="subscribe" name="subscribe" checked /><label for="subscribe">订阅推送信息</label><br /><!-- 下拉列表 --><label for="country">国家:</label><select id="country" name="country"><option value="cn">CN</option><option value="usa">USA</option><option value="uk">UK</option></select><br /><!-- 提交按钮 --><input type="submit" value="提交" /></form></body>
</html>
image-20250904020206089
  • <form> 元素用于创建表单,action 属性定义了表单数据提交的目标 URL,method 属性定义了提交数据的 HTTP 方法(这里使用的是 “post”)。
  • <label> 元素用于为表单元素添加标签,提高可访问性。
  • <input> 元素是最常用的表单元素之一,它可以创建文本输入框、密码框、单选按钮、复选框等。type 属性定义了输入框的类型,id 属性用于关联 <label> 元素,name 属性用于标识表单字段。
  • <select> 元素用于创建下拉列表,而 <option> 元素用于定义下拉列表中的选项。<requried>规定用户在提交表单前必须选择一个下拉列表中的选项。

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

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

相关文章

云数据库服务(参考自腾讯云计算工程师认证课程)更新中......

数据库基础介绍面临的挑战&#xff1a;数据库系统架构&#xff1a; 数据库DB、数据库管理系统DBMS&#xff08;负责数据库的搭建、使用和维护的系统软件&#xff0c;通过组织、索引、查询、修改数据库文件、实现数据定义、组织、存储、管理以及数据库操作、运行和维护等主要功能…

源滚滚AI编程SillyTavern酒馆配置Claude Code API教程

什么是酒馆 SillyTavern&#xff08;简称 ST&#xff09;是一款本地安装的用户界面&#xff0c;让你能够与文本生成大模型&#xff08;LLM&#xff09;、图像生成引擎以及语音合成&#xff08;TTS&#xff09;模型进行交互。我们的目标是尽可能赋予用户对 LLM 提示词的最大掌控…

软件设计师——软件工程学习笔记

软件工程 一、软件工程基础知识 1. 软件的生存周期&#xff08;1&#xff09;可行性分析与项目开发计划。这个阶段主要确定软件的开发目标及其可行性。参与该阶段的人员有用户、项目负责人、系统分析师。产生的文档有 可行性分析报告、项目开发计划。 &#xff08;2&#xff09…

阿里云ecs 2h2g 实际可用内存不足的情况

Kdump是Linux系统的一种内核崩溃转储机制&#xff0c;它允许在系统发生内核崩溃&#xff08;例如内核panic&#xff09;时&#xff0c;捕获内存的转储信息&#xff0c;从而帮助事后分析故障原因。该过程需要一块预留内存&#xff08;称为crashkernel内存&#xff09;&#xff0…

MySQL抛出的Public Key Retrieval is not allowed

有时候在连接实例的时候会遇到这样的报错Public Key Retrieval is not allowed问题分析这是因为账号使用了sha256_password或者caching_sha2_password 密码插件而sha256_password或者caching_sha2_password 插件为了加快认证过程&#xff0c;在服务端维护了一个密码哈希缓存。当…

ICP可能有用的

可以训练GICP WGICP: Differentiable Weighted GICP-Based Lidar Odometry | GAMMA CT ICP (99 封私信 / 80 条消息) KITTI里程计排行榜上第五&#xff01;CT-ICP&#xff1a;实时弹性激光雷达里程计与回环检测 - 知乎 Faster GICP github.com

nextcyber——Shells和Payloads

Shells和Payloads Shell的基础知识 正向Shells Tom可以在一个Linux目标上发出nc -lvnp 443的命令。他需要从他的攻击机连接到哪个端口&#xff0c;才能成功建立一个shell会话&#xff1f; 443SSH到目标&#xff0c;创建一个bind shell&#xff0c;然后用netcat连接到目标&a…

笔记:现代操作系统:原理与实现(2)

第三章 操作系统结构 操作系统的机制与策略 操作系统乃至计算机系统中控制复杂度的—个重要设计原则是:将策略与机制相分离&#xff0c;其中策略&#xff08;policy&#xff09;表示要‘‘做什么”&#xff0c;机制&#xff08;mechanjsm&#xff09;表示该“如何做”。 操作系…

c++ 压缩与解压缩

1、使用zip开源库&#xff0c;引入比较简单&#xff0c;只需要包含四个头文件&#xff0c;不需要编译成库文件&#xff1a;zip.h、zip.cpp、unzip.h、unzip.cpp。2、压缩使用到的主要函数&#xff1a;CreateZip 创建zip文件ZipAdd 添加文件ZipAddFolder 添加文件夹CloseZip 关闭…

水下无线光通信(UWOC)TDD系统:光收发端编解码与信号处理分析与方案(数字版)

在光收发模块中添加编解码与信号处理模块,核心目标是提升水下信道抗干扰能力(对抗后向散射、环境光、信号衰减)、降低误码率,同时兼容原有TDD时隙控制逻辑。以下从“编码方案选型”“光发送端信号处理”“光接收端信号处理”“与原有系统集成”四部分展开,形成完整技术闭环…

Seat 事务@GlobalTransactional传播行为

一&#xff0c;分布式事务传播行为调用链描述一个普通事务注解的方法&#xff0c;调用一个分布式事务注解方法分布式事务注解方法&#xff1a;包含一个本地更新&#xff0c;和两个外部服务更新操作&#xff0c;涉及三个服务问题1&#xff0c;普通事务注解方法&#xff0c;在全局…

美团龙猫利用expat库实现的保存xml指定范围数据到csv的C程序

用自己代码逐个字符解析的速度较慢&#xff0c;尝试了libxml2也比较慢&#xff0c;它需要一次性读入内存&#xff0c;而expat库支持流式读取。就让龙猫写了一个程序&#xff0c;毕竟是久经考验的库&#xff0c;程序很快就调试通过了。要不是我一开始没信心&#xff0c;让他先输…

Transformer核心—自注意力机制

Transformer基础—自注意力机制 当我们处理文本、语音这类序列数据时&#xff0c;总会遇到一个老问题&#xff1a;模型到底该怎么理解“前后文”呢&#xff1f; RNN 和 LSTM 曾经是热门的答案&#xff0c;它们沿着时间顺序一点点地读数据&#xff0c;但读得太慢&#xff0c;还容…

分片上传-

分片上传原理&#xff1a;客户端将选择的文件进行切分&#xff0c;每一个分片都单独发送请求到服务端&#xff1b;断点续传 & 秒传原理&#xff1a;客户端 发送请求询问服务端某文件的上传状态 &#xff0c;服务端响应该文件已上传分片&#xff0c;客户端再将未上传分片上传…

零知开源——基于STM32F103RBT6的智能风扇控制系统设计与实现

✔零知IDE 是一个真正属于国人自己的开源软件平台&#xff0c;在开发效率上超越了Arduino平台并且更加容易上手&#xff0c;大大降低了开发难度。零知开源在软件方面提供了完整的学习教程和丰富示例代码&#xff0c;让不懂程序的工程师也能非常轻而易举的搭建电路来创作产品&am…

ReACT Agent概述

目录 1. 核心思想&#xff1a;解决传统方法的局限性 2. ReACT 的工作原理&#xff1a;一个循环过程 3. 技术实现的关键要素 4. ReACTAgent 在任务中的具体工作流程 5. 优势与重要性 6. 挑战与局限性 总结 ReACT 是一个非常重要的框架&#xff0c;它代表了构建能够推理&a…

必知!机器人的分类与应用:RPA、人形与工业机器人

每当提及“机器人”这三个字&#xff0c;许多人的第一反应或许仍是科幻电影中那种具备人类外形、可自由行走与对话的仿生装置。然而&#xff0c;一个值得深入探讨的科技现实是&#xff1a;我们对于人形机器人的迷恋&#xff0c;更多源自文化叙事与情感投射&#xff0c;而非真实…

最快的 C 语言 JSON 库 - yyjson

文章目录DOM 模式下的性能比对一、AWS EC2 (AMD EPYC 7R32, gcc 9.3)二、iPhone (Apple A14, clang 12)持续更新中 持续更新中 持续更新中一个用 ANSI C(C89) 编写的高性能 JSON 库 API.md DOM 模式下的性能比对 DOM 模式&#xff0c;即构建完整 JSON 内存结构后访问数据的模…

TP8 模型save更新不成功

一、User文件头部代码class User extends Model {const TITLE_NAME 用户;//名称//不能删除protected $name user_; //表名 protected $connection \app\services\database\model\DbConnModel::CONN_DB_SITE; //数据库的连接二、更新部分我要更新user_1用户表中的用户信息$se…

中囯移动电视盒子(魔百和)B860AV2.1-A2和CM311-5-zg刷机手记

文章目录B860AV2.1-A2电视盒子情况打开隐藏或屏蔽的功能进入Recovery模式打开WiFi&#xff08;如果被隐藏&#xff09;打开运维调试打开ADB调试安装第三方应用、设置第三方桌面等&#xff08;Fiddler抓包替换官方App安装包&#xff09;开启ADB和使用ADB禁止“首次启动设置”刷机…