HTML入门笔记

概述

HTML(超文本标记语言—HyperText Markup Language)是构成 Web 世界的基础,是一种用来告知浏览器如何组织页面的标记语言。

超文本 Hypertext:指连接单个或多个网站间的网页链接,通过这些链接可以访问互联网中的内容。

标记 Markup:用于注明文本、图片等内容,以便在浏览器中正确显示,例如 <head>、<body> 等。

网页的构成

  • HTML:通常用来定义网页内容的含义和基本结构

  • CSS:通常用来描述网页的表现与展示效果

  • JavaScript:通常用来执行网页的功能与行为

组成

标签

HTML 页面由一系列的元素(elements)组成,而元素是使用标签创建的。

一对标签(tags)可以设置一段文字样式、添加一张图片或创建超链接等。

在 HTML 中,<h1> 标签表示标题,可以使用开始标签和结束标签包围文本内容,以标题形式显示。

<h1>开始学习 Java Web</h1>
<h2>二级标题</h2>

属性

HTML 标签可以拥有属性:

  • 属性:属于标签,用于修饰标签,提供额外的效果。
  • 定义:属性一般定义在起始标签内部。
  • 格式:以 属性=属性值 的形式出现。
  • 引号:属性值通常用 '' 或 "" 括起来,不加引号也是可以的(但不建议)。

例如:

<h1 align="center">开始学习 Java Web</h1>

在这个例子中,align 属性表示水平对齐方式,赋值为 center 表示 居中。

结构

文档结构包含以下几个主要部分:

1、文档声明:<!DOCTYPE html> 声明当前 HTML 版本,指示浏览器以 HTML5 渲染页面。
2、html 根标签:所有内容都需放在 <html> 标签内部。
3、文档头部配置:使用 <head> 标签定义页面的配置信息,包括外部文件引入和元数据。

  • <meta charset="utf-8">:设置文档字符集为 UTF-8。
  • <title>:定义文档标题,在浏览器标签中显示,并用于页面收藏。

4、文档显示内容:<body> 标签内的内容将在浏览器中显示。

HTML语法

注释方式

在 HTML 中,注释的语法是使用 <!-- 注释内容 -->。这段内容在浏览器中不会被显示,主要用于代码说明或记录。

    <!-- <h1>hello world</h1> --><h1>hello world</h1>

基本元素

空元素

一些元素只有一个标签,称为空元素。它们在开始标签中进行关闭。例如:

第一行文档<br/> 
第二行文档<br/>

嵌套元素

将元素放置在其他元素内部的行为被称为嵌套。例如:

<h2><u>二级标题</u></h2>

块元素与行内元素

在 HTML 中,有两种重要的元素类别:块级元素和行内元素。

  • 块级元素:独占一行。块级元素以块的形式展示,会导致换行。常见的块级元素包括 <p>、<hr>、<li>、<div> 等。
  • 行内元素:不会导致换行。行内元素通常出现在块级元素内部,只环绕文档内容的一小部分。常见的行内元素有 <b>、<a>、<i>、<span> 等。

注意:块级元素不能嵌套在行内元素中,但可以嵌套在其他块级元素中。

常用标签

  • <div>:一个通用的块级内容容器,没有特殊语义,通常用于分组和样式化。常用属性包括 id、style 和 class。
  • <span>:一个通用的行内内容容器,也没有特殊语义,常用于对元素进行样式处理。

基本属性

标签属性用于扩展标签,提供额外信息,不会直接出现在内容中,但可以改变标签的行为或提供数据。属性总是以 name="value" 的格式展示。

属性规则
  • 属性名:同一标签中,属性名不得重复。
  • 大小写:属性和属性值对大小写不敏感。建议使用小写。
  • 引号:双引号最常用,但单引号也可以。
常用属性
属性名作用
class定义元素类名,用于选择和访问特定元素
id定义元素唯一标识符,在整个文档中必须唯一
name定义元素名称,可用于提交表单的字段
value定义元素内显示的默认值
style定义CSS样式,覆盖之前设置的样式

特殊字符

在HTML中,某些字符具有特殊含义,因此需要使用字符实体来表示。

原义字符等价字符引用
<&lt;
>&gt;
"&quot;
'&apos;
&&amp;
空格&nbsp;

文本标签

文本内容标签用于设置文字的基本样式和结构。

标签名作用
p表示文本的一个段落
h表示文档标题,<h1>–<h6>,呈现六个不同的级别的标题
hr表示段落级元素之间的主题转换,通常显示为水平线
li表示列表里的条目,常用于 ul 和 ol
ul表示无序列表,可包含多个元素,无编号显示
ol表示有序列表,通常渲染为带编号的列表
em表示文本着重,通常用斜体显示
strong表示文本重要性,通常用粗体显示
i表示斜体
b表示加粗文本

使用文本标签的效果示例 

<!DOCTYPE html>
<html lang="zh">
<head><meta charset="UTF-8"><title>文本标签示例</title>
</head>
<body><h1>这是主标题</h1>
<p>这是一个段落,包含 <strong>重要信息</strong> 和 <em>强调文本</em>。</p>
<hr>
<h2>这是副标题</h2>
<p>以下是一个无序列表:</p>
<ul><li>无序列表项 1</li><li>无序列表项 2</li><li>无序列表项 3</li>
</ul>
<p>以下是一个有序列表:</p>
<ol><li>有序列表项 1</li><li>有序列表项 2</li><li>有序列表项 3</li>
</ol><p>这是 <i>斜体文本</i> 和 <b>加粗文本</b> 的示例。</p></body>
</html>

图片标签

<img> 标签用于在网页中显示图片。以下是使用该标签的示例及其属性说明:

<img src="../img/b.jpg" width="400" height="200" alt="描述文本" title="悬停提示文本" />

属性说明

属性名作用
src指定图片的路径。
title鼠标悬停时显示的提示文本。
alt图片无法显示时的替代文本描述。
height指定图片的高度。
width指定图片的宽度。

超链接标签

超链接使用 <a> 标签,主要用于实现页面之间的跳转。以下是基本用法示例: 

<a href="https://www.baidu.com/" target="_blank" title="点击访问示例网站">访问示例网站</a>

属性说明

属性名作用
href指定链接目标的URL。
target指定链接打开的方式(如新窗口或同窗口)。
title鼠标悬停时显示的提示文本。

表单标签

表单概述

<form> 标签是一个用于收集用户输入并提交给 Web 服务器的容器。

<form><!-- 表单元素 -->
</form>

常用属性:

  • action:指定表单提交的 URL。
  • method:提交方式,常见值为 GET 和 POST。
  • autocomplete:自动补全输入内容。

GET 和 POST 的区别

  • GET:数据附加在 URL 中,适合获取数据;不安全且有长度限制。
  • POST:数据在表单体中,适合传输敏感或大量数据;较安全且无大小限制。

表单元素

常用的表单元素标签包括:

标签名作用备注
label表单元素的说明,配合表单元素使用for属性值为相关表单元素id属性值
input表单中输入控件,多种输入类型,用于接受来自用户数据type属性值决定输入类型
button页面中可点击的按钮,可以配合表单进行提交type属性值决定按钮类型
select表单的控件,下拉选项菜单与option配合实用
optgroupoption的分组标签与option配合实用
optionselect的子标签,表示一个选项
textarea表示多行纯文本编辑控件
fieldset用来对表单中的控制元素进行分组(也包括 label 元素)
legend用于表示它的fieldset内容的标题。fieldset 的子元素

按钮控件

<button> 标签通过 type 属性控制行为:

  • button:自定义按钮。
  • submit:提交表单。
  • reset:重置表单。

输入控件 <input>

在HTML表单中,input控件的type属性是最重要的设置之一。不同的type属性值对应不同的输入字段类型,决定了用户如何输入数据以及浏览器如何展示控件。

输入控件基本概念
  • label标签:用于描述表单字段。for属性与input标签的id属性相对应,确保点击标签时焦点跳转到对应的输入框。
  • input标签:定义用户可以输入数据的区域。可通过不同的type属性,设定不同的输入方式。

input标签常见属性

  • type: 指定输入类型,如text、password、email等。
  • id: 该元素的唯一标识符,通常与label的for属性配合使用。
  • name: 该字段在提交时的名称,表单数据以键值对的形式提交,name是键。
  • value: 定义输入字段的初始值。
  • placeholder: 显示提示文本,当输入为空时出现。
  • required: 该字段是否为必填项。
  • readonly: 是否只读,用户无法修改输入框内容。
  • disabled: 禁用输入框,用户无法操作且值不会提交到服务器。
  • autocomplete: 控制是否开启自动补全功能,可设为off关闭。

n-v属性

表单提交时,使用name属性作为键,value属性作为值,多个键值对以&符号分隔,传递到服务器。

常见的type属性值

属性值作用示例或说明
text单行文本输入用于普通文本输入
password密码输入,遮挡输入内容仅显示掩码而非真实字符
email电子邮件输入会进行简单的邮箱格式验证
radio单选按钮在同一组中只能选择一个
checkbox复选框可以多选,提交时数据为数组
date日期选择包含年、月、日
time时间选择仅包含小时和分钟
datetime-local日期时间选择,不含时区包含年、月、日、时间
number数字输入允许输入浮点数
range范围选择可设定最大值、最小值、步长等
tel电话号码输入支持电话号码格式
urlURL输入自动校验URL格式
file文件上传支持文件选择和上传
hidden隐藏字段,用户不可见用于传递隐藏数据

选择控件

<select>标签用于创建下拉列表,允许用户从预定义的选项中选择一个值。每个选项由<option>标签定义。

<select name=""><option value="">显示的内容</option>
</select>

选择控件元素

  • <option>:表示列表中的每个选项。value属性定义选中该选项时提交的值,而option标签内的文本为用户界面上显示的内容。
  • <optgroup>:用于将下拉列表中的选项进行分组,分组名由label属性指定。

 

文本域控件

<textarea>标签用于创建多行文本输入框,允许用户输入大量文本。

<textarea name="textarea" rows="10" cols="50">Write something here</textarea>

文本域属性

  • name: 提交时该文本域的名称。
  • rows: 文本域的行数。
  • cols: 文本域的列数,控制宽度。

分组控件

<fieldset>标签用于将表单中的元素分组,通常与<legend>标签一起使用,为组提供一个标题。它可以帮助对表单进行逻辑分割,提高可读性。

分组控件元素

  • <fieldset>: 定义一组表单控件。
  • <legend>: 为控件组提供一个标题。
  • <input>: 使用单选按钮提供“同意”或“不同意”选择。

表格标签

在 HTML 中,表格标签 <table> 用于显示结构化的数据,表格由行(<tr>)和单元格(<td> 或 <th>)组成。

基本属性

  • <table>: 定义表格容器。
  • <tr>: 表示表格中的一行(table row)。
  • <td>: 表格中的单元格(table data)。
  • <th>: 表头单元格(table header),用于标题栏,通常字体加粗且居中显示。

表格结构

表格结构标签可分为表头(<thead>)、表主体(<tbody>)、表尾(<tfoot>),它们有助于逻辑分割表格内容,提升可读性与布局管理。

标签名作用备注
<thead>定义表格的列头的行一个表格中仅有一个
<tbody>定义表格的主体用来封装一组表行(<tr>
<tfoot>定义表格的各列汇总行一个表格中仅有一个
<!DOCTYPE html>
<html lang="zh"><head><meta charset="UTF-8" /><title>示例</title>
</head><body><table><thead><tr><th>产品</th><th>价格</th><th>库存</th></tr></thead><tbody><tr><td>手机</td><td>5000元</td><td>200</td></tr><tr><td>笔记本</td><td>8000元</td><td>100</td></tr></tbody><tfoot><tr><td>合计</td><td colspan="2">库存总量:300</td></tr></tfoot></table></body></html>

跨行跨列

跨行和跨列可以使用以下属性:

  • rowspan:定义跨行的单元格数。
  • colspan:定义跨列的单元格数。
<!DOCTYPE html>
<html lang="zh"><head><meta charset="UTF-8" /><title>示例</title>
</head><body><table width="400px" border="1px" align="center"><thead><tr><th>姓名</th><th>性别</th><th>年龄</th><th>数学</th><th>语文</th></tr></thead><tbody><tr align="center"><td>张三</td><td rowspan="2">男</td> <!-- 性别跨两行 --><td>23</td><td colspan="2">90</td> <!-- 数学成绩跨两列 --></tr><tr align="center"><td>李四</td><td>24</td><td>95</td><td>98</td></tr></tbody><tfoot><tr><td colspan="4">总分数:</td> <!-- 合并四列 --><td>373</td></tr></tfoot></table></body></html>

样式布局与 div 标签使用

基本格式

在 HTML 中,样式通常放置在 <head> 标签中,使用 <style> 标签包裹样式规则。每个标签的样式可以通过选择器定义不同的样式属性。

<style>标签名 {属性名1: 属性值1;属性名2: 属性值2;属性名3: 属性值3;}
</style>

背景格式

背景颜色 (background-color):用于设置元素的背景颜色。

body {background-color: #567895;
}

背景图片 (background-image):通过 url() 函数指定图片路径,将图片作为背景。

body {background-image: url("path-to-image/bg.png");
}

背景重复 (background-repeat):控制背景图片是否平铺,以及平铺的方向。

body {background-image: url("star.png");background-repeat: repeat-x; /* 水平重复 */
}

可选值:

  • no-repeat:不重复背景
  • repeat-x:水平重复
  • repeat-y:垂直重复
  • repeat:双向重复(默认)

div 布局

简单边框布局:为 div 标签设置边框。

使用 class 属性布局:通过 class 属性为 div 标签添加多个样式属性,如宽度、浮动、背景等。

浮动布局:使用 float 属性让元素沿左边或右边浮动,从而实现流体布局。

float: left; /* 左浮动 */
float: right; /* 右浮动 */

使用 clear 清除浮动,避免浮动对页面其他部分的影响:

clear: both;

div 的基本布局示例

语义化标签

HTML5 中引入了语义化标签,这些标签不仅帮助开发者组织和理解页面结构,还能让搜索引擎和辅助技术更好地解析页面的内容。

标签名称作用备注
header标头元素表示内容的介绍或标题部分块级元素,一个文档中可以定义多个 header 标签
nav导航元素表示页面中的导航链接用于定义导航栏,通常包含菜单或目录,可嵌套在 header
article文章元素表示独立的内容区域独立的可重用内容块,常用于文章、博客、新闻条目等
footer页脚元素表示页面或内容的底部信息定义文档或部分的页脚,可以包含版权声明、相关链接等

语义化标签的作用

  • 增强可读性:通过使用语义化标签,代码结构更清晰,其他开发者能够更容易理解页面结构。
  • SEO 优化:搜索引擎更好地解析语义化标签,从而提升页面的搜索排名。
  • 可访问性增强:语义化标签帮助屏幕阅读器等辅助技术更好地解读页面内容,提升可访问性。

HTML拓展

音频标签

<audio> 标签用于在网页中嵌入音频,是 HTML5 引入的新标签。

常用属性:

属性名取值描述
srcURL音频资源的路径
autoplayautoplay音频准备就绪后自动播放
controlscontrols显示播放控件(播放、暂停等按钮)
looploop音频循环播放
preloadpreload音频在页面加载时预加载;如果使用 "autoplay",则忽略该属性。

示例:

视频标签

<video> 标签用于在网页中嵌入视频,同样是 HTML5 引入的新标签。

常用属性:

属性名取值描述
srcURL要播放的视频的 URL。
width设置视频播放器的宽度。
height设置视频播放器的高度。
autoplayautoplay视频在加载后自动播放。
controlscontrols显示播放控件。
looploop视频循环播放。
preloadpreload视频在页面加载时预加载。<br />如果使用 "autoplay",则忽略该属性。
mutedmuted静音播放。
posterURL视频加载时显示的封面图片。

示例:

回到顶部

在 HTML 中,使用锚点可以实现页面内的跳转,如“回到顶部”的功能。

示例:

 

详情与概要标签 <details> 和 <summary>

<summary> 标签用于描述概要信息,<details> 标签用于显示隐藏的详细信息。默认情况下,详情是折叠的,需要点击查看。

示例:

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

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

相关文章

论文速递!时序预测!DCSDNet:双卷积季节性分解网络,应用于天然气消费预测过程

本期推文将介绍一种新的时序预测方法:双卷积季节性分解网络&#xff08;Dual Convolution withSeasonal Decomposition Network, DCSDNet&#xff09;在天然气消费预测的应用&#xff0c;这项研究发表于《Applied Energy》期刊。 针对天然气消费的多重季节性和非规律性&#x…

【速成Redis】01 Redis简介及windows上如何安装redis

前言&#xff1a; 适用于&#xff1a;需要快速掌握redis技能的人&#xff08;比如我&#xff09;&#xff0c;在b站&#xff0c;找了个课看。 01.课程简介_哔哩哔哩_bilibili01.课程简介是【GeekHour】一小时Redis教程的第1集视频&#xff0c;该合集共计19集&#xff0c;视频…

【面试八股总结】GMP模型

GMP概念 G&#xff08;Goroutine&#xff09;&#xff1a;代表Go协程&#xff0c;是参与调度与执行的最小单位。 存储Goroutine执行栈信息、状态、以及任务函数等。G的数量无限制&#xff0c;理论上只受内存的影响。Goroutines 是并发执行的基本单位&#xff0c;相比于传统的线…

Redis集群知识及实战

1. 为什么使用集群 在哨兵模式中&#xff0c;仍然只有一个Master节点。当并发写请求较大时&#xff0c;哨兵模式并不能缓解写压力。我们知道只有主节点才具有写能力&#xff0c;那如果在一个集群中&#xff0c;能够配置多个主节点&#xff0c;是不是就可以缓解写压力了呢&…

sourcetree配置ssh连接gitee

使用PuttyGen.exe生成的公钥私钥格式和git文档方法生成的不一样&#xff0c; SSH 公钥设置 | Gitee 帮助中心 gitee方法生成的公钥类似&#xff1a; ssh-ed25519 AAAA***5B Gitee SSH Key PuttyGen.exe生成的&#xff1a; 公钥 ---- BEGIN SSH2 PUBLIC KEY ---- Comment:…

【新手/小白教程】打开一个vue项目的前置准备,nvm安装指定版本node

目录 一、前言二、nvmnvm介绍nvm下载与安装1. 官网下载 nvm 包2. 安装 nvm-setup.exe3. 配置路径和下载镜像4. 检查nvm是否安装完成5. 错误情况 三、nodenode版本查看node命令 一、前言 在换新电脑的时候总是需要把所有东西重新安装配置&#xff0c;这篇用来记录一下打开一个v…

【云原生监控】Prometheus之PushGateway

Prometheus之PushGateway 文章目录 Prometheus之PushGateway介绍作用资源列表基础环境一、部署PushGateway1.1、下载软件包1.2、解压软件包1.3、编辑配置systemctl启动文件1.4、创建日志目录1.5、加载并启动1.6、监控端口1.7、访问PushGateway 二、 配置Prometheus抓取PushGate…

IP协议及相关特性

IP协议负责地址管理和路由选择。它的组成为&#xff1a; 接下来我们将对其中较重要的部分进行介绍。 4位版本&#xff1a;这里的四位版本只有两个取值 分别为IPv4和IPv6&#xff0c;这两个额分别为不同的IP协议&#xff0c;但是现在主流的还是IPv4但是近年来IPv6在中国的普及率…

OpenHarmony(鸿蒙南向开发)——标准系统方案之瑞芯微RK3566移植案例(上)

往期知识点记录&#xff1a; 鸿蒙&#xff08;HarmonyOS&#xff09;应用层开发&#xff08;北向&#xff09;知识点汇总 鸿蒙&#xff08;OpenHarmony&#xff09;南向开发保姆级知识点汇总~ OpenHarmony&#xff08;鸿蒙南向开发&#xff09;——轻量系统STM32F407芯片移植案…

Java语言程序设计基础篇_编程练习题*18.28 (非递归目录大小)

目录 题目&#xff1a;*18.28 (非递归目录大小) 习题思路 代码示例 输出结果 题目&#xff1a;*18.28 (非递归目录大小) 不使用递归改写程序清单18-7 习题思路 &#xff08; getSize方法&#xff09; 创建一个变量表示总共的大小。传入路径&#xff0c;创建File文件。创建A…

【Elasticsearch】-图片向量化存储

需要结合深度学习模型 1、pom依赖 注意结尾的webp-imageio 包&#xff0c;用于解决ImageIO.read读取部分图片返回为null的问题 <dependency><groupId>org.openpnp</groupId><artifactId>opencv</artifactId><version>4.7.0-0</versio…

docker存储

docker分层结构 如图所示&#xff0c;容器是由最上面可读可写的容器层&#xff0c;以及若干个只读镜像层组成&#xff0c;创建容器时&#xff0c;容器中的 数据都来自镜像层。这样的分层机构最大的特点是写时复制&#xff1a; 1、容器中新生成的数据会直接存放在容器层&#xf…

移动技术开发:登录注册界面

1 实验名称 登录注册界面 2 实验目的 掌握基本布局管理器的使用方法和基本控件的使用方法 3 实验源代码 布局文件代码&#xff1a; <?xml version"1.0" encoding"utf-8"?><LinearLayoutxmlns:android"http://schemas.android.com/apk/…

在Windows 7上安装Redis

1、下载Redis安装包‌&#xff1a; 首先&#xff0c;从Redis的官方网站或可信的第三方资源下载Redis的Windows版本安装包。确保下载与你的Windows 7系统兼容的版本。 2、解压安装包‌&#xff1a; 将下载的Redis安装包解压到你选择的目录&#xff0c;例如F:\Redis\redis-win…

关于文件操作

1. 为什么使⽤⽂件&#xff1f; 如果没有⽂件&#xff0c;我们写的程序的数据是存储在电脑的内存中&#xff0c;如果程序退出&#xff0c;内存回收&#xff0c;数据就丢失 了&#xff0c;等再次运⾏程序&#xff0c;是看不到上次程序的数据的&#xff0c;如果要将数据进⾏持久…

栈和队列的算法题目(C语言)

1. 括号匹配问题 20. 有效的括号 - 力扣&#xff08;LeetCode&#xff09; 利用栈后入先出的特性解题 1.判断字符串是否为空 为空返回 2.创建栈&#xff0c;遍历字符串 第一个字符是左括号的情况&#xff1a;入栈->继续遍历下一个字符 第一个字符是右括号的情况&#xf…

CAD图1

文章目录 选择直线工具选择圆形选中圆形 选择直线工具 画一条十字中心线 选择圆形 以十字中心为起点画一个半径为 53 的圆形 选中圆形 选中圆形&#xff0c;捕捉右侧圆形焦点

【算法专题】穷举vs暴搜vs深搜vs回溯vs剪枝

二叉树剪枝 LCR 047. 二叉树剪枝 - 力扣&#xff08;LeetCode&#xff09; 本题要求我们将全部为0的二叉树去掉&#xff0c;也就是剪枝&#xff0c;当我们举一个具体的例子进行模拟时&#xff0c;会发现&#xff0c;只关注于对其中一个子树的根节点进行剪枝&#xff0c;由于我…

4款AI生成PPT工具推荐,提升工作效率

在如今的工作环境中&#xff0c;PPT制作是许多技术人员不可避免的任务&#xff0c;尤其是在汇报、展示技术方案、以及项目进展时。随着AI技术的快速发展&#xff0c;使用AI生成PPT成为了提高效率的一种新趋势。本文将介绍几款适合程序员、技术人员的AI生成PPT工具&#xff0c;帮…

强化学习——马尔可夫决策过程(MDP)【附 python 代码】

一、马尔可夫过程 过程介绍随机过程在某时刻 t 的状态 S t S_t St​ 通常取决于 t 时刻之前的状态。状态 S t 1 S_{t1} St1​ 的概率表示为&#xff1a; P ( S t 1 ∣ S 1 , . . . , S t ) P(S_{t1}|S_1,...,S_t) P(St1​∣S1​,...,St​)马尔可夫过程某时刻 t 的状态只取…