【HTML】HTML基础知识扫盲
1、什么是HTML?
HTML是超文本标记语言(Hyper Text Markup Language)是用来描述网页的一种语言
注意:
HTML不是编程语言,而是标记语言
HTML文件也可以直接称为网页,浏览器的作用就是读取HTML文件,并且以网页的形式去展示它们
2、HTML结构
2.1 HTML 标签
HTML 代码是由 “标签” 构成的
<body>hello world</body>
🚗标签名 (body) 放到 < > 中
🚗大部分标签成对出现. 为开始标签, 为结束标签.
🚗少数标签只有开始标签, 称为 “单标签”.
🚗开始标签和结束标签之间, 写的是标签的内容. (hello)
🚗开始标签中可能会带有 “属性”. id 属性相当于给这个标签设置了一个唯一的标识符(身份证号码):<body id = 1>hello world</body>
2.2 HTML 文件基本结构
<html><head><title>第一个页面</title></head><body>hello world!</body>
</html>
🚗html 标签是整个 html 文件的根标签(最顶层标签)
🚗head 标签中写页面的属性.
🚗body 标签中写的是页面上显示的内容
🚗title 标签中写的是页面的标题.
打开之后:
2.3 标签层次结构
2.4 如何快速生成HTML代码框架
在vscode中输入就会有提示
点击后生成框架:
3、HTML常见标签
3.1 注释标签
3.2 标题标签: h1-h6
有六个, 从 h1 - h6. 数字越大, 则字体越小
<h1>Hello</h1><h2>Hello</h2><h3>Hello</h3><h4>Hello</h4><h5>Hello</h5><h6>Hello</h6>
打开文件:
3.3 段落标签: p
把一段比较长的文本粘贴到 html 中, 会发现并没有分成段落:
<body>本项目基于树莓派构建了一个实验设备管理系统,通过人脸识别验证用户身份并与用户进行人机交互,以实现实验设备的安全和高效利用[1]。随着物联网技术的不断发展,物联网设备已经从传统的计算机和移动设备向各种物理设备拓展,包括汽车、家居、城市基础设施等等[2]。此外,人机交互作为一项核心技术也不断得到重视。人与智能设备之间的自然语音或者手势交互方式对于改善人们日常生活乃至工业生产、医疗卫生等领域都有较大帮助。因此,本项目具有广阔应用前景。在硬件方面,树莓派被广泛应用于各种物联网设备和嵌入式系统中,由其提供强大的计算和控制能力,成为受欢迎的单板计算机之一。[4]同时人脸识别技术也不断得到提高,深度学习技术尤其是卷积神经网络已成为主流研究思路。在软件方面,微信小程序在人机交互领域应用较广[7],具备实时性、易用性等特点。同时Python语言在物联网设备的控制和操作中得到广泛应用,具有灵活性、高效性等优点。因此,通过对硬件软件结合、树莓派、人脸识别、微信小程序、Python语言等进行综合运用,该项目在未来有望进一步拓展其应用场景和发展空间[10]。
</body>
我们使用p标签改进:
<body><p>本项目基于树莓派构建了一个实验设备管理系统,通过人脸识别验证用户身份并与用户进行人机交互,以实现实验设备的安全和高效利用[1]。</p><p>随着物联网技术的不断发展,物联网设备已经从传统的计算机和移动设备向各种物理设备拓展,包括汽车、家居、城市基础设施等等[2]。此外,人机交互作为一项核心技术也不断得到重视。人与智能设备之间的自然语音或者手势交互方式对于改善人们日常生活乃至工业生产、医疗卫生等领域都有较大帮助。因此,本项目具有广阔应用前景。</p><p>在硬件方面,树莓派被广泛应用于各种物联网设备和嵌入式系统中,由其提供强大的计算和控制能力,成为受欢迎的单板计算机之一。[4]同时人脸识别技术也不断得到提高,深度学习技术尤其是卷积神经网络已成为主流研究思路。</p><p>在软件方面,微信小程序在人机交互领域应用较广[7],具备实时性、易用性等特点。同时Python语言在物联网设备的控制和操作中得到广泛应用,具有灵活性、高效性等优点。</p><p>因此,通过对硬件软件结合、树莓派、人脸识别、微信小程序、Python语言等进行综合运用,该项目在未来有望进一步拓展其应用场景和发展空间[10]。</p>
</body>
3.4 换行标签: br
br 是 break 的缩写. 表示换行
<body>
hello<br>world
</body>
3.5 格式化标签
🚗加粗: strong 标签 和 b 标签
🚗倾斜: em 标签 和 i 标签
🚗删除线: del 标签 和 s 标签
🚗下划线: ins 标签 和 u 标签
(推荐使用简洁的)
<b>hello world</b> <br><i>hello world</i> <br><s>hello world</s> <br><u>hello world</u>
3.6 图片标签: img
img 标签必须带有 src 属性. 表示图片的路径
img 标签的其他属性:
🚗alt: 替换文本. 当文本不能正确显示的时候, 会显示一个替换的文字.
🚗title: 提示文本. 鼠标放到图片上, 就会有提示.
🚗width/height: 控制宽度高度. 高度和宽度一般改一个就行, 另外一个会等比例缩放. 否则就会图片失衡.
🚗border: 边框, 参数是宽度的像素. 但是一般使用 CSS 来设定
<img src = "goat.png" alt="山羊吐舌图" title="山羊吐舌" width="200px" height="200px">
图片丢失则显示:
上述我们使用的图片地址为相对地址
图片地址分类如下:
🚨网络地址
🚨绝对地址
🚨相对地址
(后两个为本地地址)
3.7 超链接标签: a
<a href="https://blog.csdn.net/m0_68101404?spm=1000.2115.3001.5343" target="_blank">我的博客主页</a>
🚗href: 必须具备, 表示点击后会跳转到哪个页面.
🚗target: 打开方式. 默认是 _self. 如果是 _blank 则用新的标签页打开
打开后:
点击后就打开了对应链接:
上面介绍的是外部链接,接下来介绍其他类型:
🛺内部链接: 网站内部页面之间的链接. 写相对路径即可.
<a href="HTML_Test2.html" target="_self">我的Test2网页</a>
🛺空链接: 使用 # 在 href 中占位.
<a target="#">空链接</a>
🛺下载链接: href 对应的路径是一个文件
<a href="goat.png"target="_self">下载山羊吐舌图</a>
🛺网页元素链接: 可以给图片等任何元素添加链接(把元素放到 a 标签中)
<a href="http://www.sogou.com" target="_blank"><img src="goat.png"alt=""> <!--点击图片跳转链接--></a>
🛺锚点链接: 可以快速定位到页面中的某个位置
<a href="#one">第一集</a><a href="#two">第二集</a><a href="#three">第三集</a><p id="one">第一集剧情 <br> ...</p><p id="two">第二集剧情 <br>...</p><p id="three">第三集剧情 <br> ...</p>
3.8 表格标签
3.8.1 基本使用
🚓table 标签: 表示整个表格
🚓tr: 表示表格的一行
🚓td: 表示一个单元格
🚓th: 表示表头单元格. 会居中加粗
🚓thead: 表格的头部区域(注意和 th 区分, 范围是比 th 要大的)
🚓tbody: 表格得到主体区域
table 包含 tr , tr 包含 td 或者 th
<body><table align="center" border="1" cellpadding="2" cellspacing="0" width="500" height="500"><tr><th>姓名</th><th>性别</th><th>年龄</th></tr><tr><td>张三</td><td>男</td><td>18</td></tr></table></body>
表格标签有一些属性, 可以用于设置大小边框等. 但是一般使用 CSS 方式来设置
这些属性都要放到 table 标签中
🚑align 是表格相对于周围元素的对齐方式. align=“center” (不是内部元素的对齐方式)
🚑border 表示边框. 1 表示有边框(数字越大, 边框越粗), “” 表示没边框
🚑cellpadding: 内容距离边框的距离, 默认 1 像素
🚑cellspacing: 单元格之间的距离. 默认为 2 像素
🚑width / height: 设置尺寸
注意, 这几个属性, vscode 都提示不出来
3.8.2 合并单元格
基本步骤:
1. 先确定跨行还是跨列
2. 找好目标单元格(跨列合并, 左侧是目标单元格; 跨行合并, 上方是目标单元格)
3. 删除的多余的单元格
🚄跨行合并: rowspan="n"
<body><table align="center" border="1" cellpadding="2" cellspacing="0" width="500" height="500"><tr><th>姓名</th><th>性别</th><th>年龄</th></tr><tr><td>张三</td><td rowspan="2">男</td><td>18</td></tr> <tr><td>李四</td><td>20</td></tr></table></body>
🚄跨列合并: colspan="n"
<body><table align="center" border="1" cellpadding="2" cellspacing="0" width="500" height="500"><tr><th>姓名</th><th>性别</th><th>年龄</th></tr><tr><td>张三</td><td colspan="2">男</td></tr> </table></body>
3.9 列表标签
3.9.1 无序列表(unorderedList)
使用:<ul> <li>
<body><ul><li>唐僧</li><li>八戒</li><li>沙师弟</li></ul>
</body>
3.9.2 有序列表(orderedList)
使用:<ol> <li>
<body><ol><li>唐僧</li><li>八戒</li><li>沙师弟</li></ol>
</body>
3.9.3 自定义列表
<body><dl><dt>标题</dt><dd>第一点</dd><dd>第二点</dd><dd>第三点</dd></dl>
</body>
3.10 表单标签
表单是让用户输入信息的重要途径
分成两个部分:
🚔表单域: 包含表单元素的区域. 重点是 form 标签.
🚔表单控件: 输入框, 提交按钮等. 重点是 input 标签
下面介绍具体的标签:
3.10.1 from标签
描述了要把数据按照什么方式, 提交到哪个页面中
<from action="HTML_Test1.html">....
</from>
3.10.2 input 标签
各种输入控件, 单行文本框, 按钮, 单选框, 复选框.
🛵type(必须有), 取值种类很多多, button, checkbox, text, file, image, password, radio等
🛵name: 给 input 起了个名字. 尤其是对于 单选按钮, 具有相同的 name 才能多选一
🛵value: input 中的默认值
🛵checked: 默认被选中 (用于单选按钮和多选按钮)
🛵maxlength: 设定最大长度
下面逐个演示:
(1)文本框
<input type="text">
(2)密码框
密码:<input type="password">
(3)单选框
注意: 单选框之间必须具备相同的 name 属性, 才能实现 多选一 效果
性别:<input type="radio" name="sex">男 <input type="radio" name="sex">女
(4)复选框
爱好:<input type="checkbox">吃饭<input type="checkbox">睡觉<input type="checkbox">打游戏
(5)普通按钮
<input type="button" value="这是个按钮">
(6)提交按钮
<from action="HTML_Test1.html"><input type="text" name="username"><input type="submit" value="提交按钮">
</from>
(7)清空按钮
<from action="HTML_Test1.html"><input type="text" name="username"><input type="submit" value="提交按钮"><input type="reset" value="清空按钮">
</from>
(8)选择文件
<input type="file">
3.10.3 label 标签
for 属性: 指定当前 label 和哪个相同 id 的 input 标签对应. (此时点击才是有用的)
<label for="male">男</label> <input id="male" type="radio" name="sex">
3.10.4 select 标签
option 中定义 selected=“selected” 表示默认选中
<select><option selected="selected">--请选择年份--</option><option>1991</option><option>1992</option><option>1993</option><option>1994</option><option>1995</option></select>
3.10.5 textarea 标签
<textarea rows="3" cols="50">11 1</textarea>
3.10.6 无语义标签:div & span
<div><span>西游记</span><span>西游记</span><span>西游记</span><span>西游记</span></div><div><span>水浒传</span><span>水浒传</span><span>水浒传</span><span>水浒传</span></div>
相关文章:

【HTML】HTML基础知识扫盲
1、什么是HTML? HTML是超文本标记语言(Hyper Text Markup Language)是用来描述网页的一种语言 注意: HTML不是编程语言,而是标记语言 HTML文件也可以直接称为网页,浏览器的作用就是读取HTML文件ÿ…...

【Mybatis-Plus】常见的@table类注解
目录 引入Mybatis-Plus依赖 TableName 当实体类的类名在转成小写后和数据库表名相同时 当实体类的类名在转成小写后和数据库表名不相同时 Tableld TableField 当数据库字段名与实体类成员不一致 成员变量名以is开头,且是布尔值 编辑 成员变量名与数据库关…...
Android WMS——操作View(七)
上一篇文章我们将 view 传递给 ViewRootImpl 进行操作,这里我们主要分析 ViewRootImpl 对 View 进行操作。在正式分析之前我们先来介绍以下 View。 一、View介绍 最开始学习 View 的时候最先分析的是它的布局(LinearLayout、FrameLayout、TableLayout、RelativeLayout、Abso…...
算法__数组排序_冒泡排序直接选择排序快速排序
文章目录 冒泡排序算法说明代码实现 直接选择排序算法说明代码实现 快速排序算法说明代码实现 本篇主要讲解数组排序相关的三种算法,冒泡排序,直接排序和快速排序。 冒泡排序 算法说明 在数组中依次比较相邻的两个元素,当满足左侧大于右侧时…...

ByteBuffer的原理和使用详解
ByteBuffer是字节缓冲区,主要用户读取和缓存字节数据,多用于网络编程,原生的类,存在不好用,Netty采用自己的ByteBuff,对其进行了改进 1.ByteBuffer的2种创建方式 1.ByteBuffer buf ByteBuffer.allocate(i…...

【MySql】10- 实践篇(八)
文章目录 1. 用动态的观点看加锁1.1 不等号条件里的等值查询1.2 等值查询的过程1.3 怎么看死锁?1.4 怎么看锁等待?1.5 update 的例子 2. 误删数据后怎么办?2.1 删除行2.2 误删库/表2.3 延迟复制备库2.4 预防误删库 / 表的方法2.4.1 账号分离2.4.2 制定操…...

【三方登录-Apple】iOS 苹果授权登录(sign in with Apple)之开发者配置一
记录一下sign in with Apple的开发者配置 前言 关于使用 Apple 登录 使用“通过 Apple 登录”可让用户设置帐户并使用其Apple ID登录您的应用程序和关联网站。首先使用“使用 Apple 登录”功能启用应用程序的App ID 。 如果您是首次启用应用程序 ID 或为新应用程序启用应用程序…...

可视化 | 数据可视化降维算法梳理
文章目录 📚数据描述🐇iris🐇MNIST 📚PCA🐇算法流程🐇图像描述 📚Kernel-PCA🐇算法流程🐇图像描述 📚MDS🐇算法流程🐇图像描述 &#…...

分布式:一文吃透分布式事务和seata事务
目录 一、事务基础概念二、分布式事务概念什么是分布式事务分布式事务场景CAP定理CAP理论理解CAPCAP的应用 BASE定理强一致性和最终一致性BASE理论 分布式事务分类刚性事务柔性事务 三、分布式事务解决方案方案汇总XA规范方案1:2PC第一阶段:准备阶段第二…...

Java架构师前沿技术
目录 1 导学2 信息物理系统2.1CPS的体系架构2.2 CPS的技术体系3 人工智能4 机器人5 边缘计算6 数字李生体7 云计算7.1 云计算的部署模式8 大数据想学习架构师构建流程请跳转:Java架构师系统架构设计 1 导学 2 信息物理系统 信息物理系统(CPS)是控制系统、嵌入式系统的扩展与…...
OpenCV ycrcb颜色空间
Opencv中有一个Ycrcb的选项,这个选项其实是Yuv444packet. 下面代码从文件中获取到一个yuv444planar的文件,通过手动转换,将其转为YcrCb,然后进行颜色空间csc. 所以可以确定这是一个packet的存储格式 def yuv444p_2_bgr8_opencv(…...

SPSS两独立样本t检验
前言: 本专栏参考教材为《SPSS22.0从入门到精通》,由于软件版本原因,部分内容有所改变,为适应软件版本的变化,特此创作此专栏便于大家学习。本专栏使用软件为:SPSS25.0 本专栏所有的数据文件请点击此链接下…...

视频格式高效转换:MP4视频批量转MKV格式的方法
随着数字媒体技术的不断发展,视频格式转换已经成为了我们日常工作中不可或缺的一部分。不同的视频格式适用于不同的场景和设备,因此将视频从一种格式转换为另一种格式往往是我们必须完成的任务。在本文中,我们将重点介绍如何运用云炫AI智剪高…...

0028Java程序设计-智能农场监控报警系统设计与实现
文章目录 摘要目 录系统设计开发环境 摘要 我国是一个以农业为主的国家,在当今社会信息化迅速发展的背景下,将信息技术与农业相融合是必然的趋势。现代信息技术在农业生产中的运用,主要体现在两个领域:一是传感器技术;…...

数据结构和算法——用C语言实现所有图状结构及相关算法
文章目录 前言图的基本概念图的存储方式邻接矩阵邻接表十字链表临界多重表 图的遍历最小生成树普里姆算法(Prim)克鲁斯卡尔算法(Kruskal) 最短路径BFS求最短路径迪杰斯特拉算法(Dijkstra)弗洛伊德算法&…...
JavaScript一些数据类型介绍
JavaScript一些数据类型介绍 1)数字类型(Number):可以表示整数和浮点数,例如:42、3.14159。 var x 42; // x 的类型是 Number var y 3.14159; // y 的类型是 Number2)字符串类型(…...
正向代理和反向代理与负载均衡
自存用 什么是反向代理,反向代理与正向代理的区别 一文帮你梳理清楚「正向代理和反向代理的区别与联系」 什么是反向代理服务器 正向代理为用户服务,给用户换个ip使其能访问其他网站 反向代理为服务器服务,使用户访问特定网站服务器。反向代…...

制造执行系统(MES)的核心功能是什么?
“一般来讲,制造执行系统(MES)的功能模块包括过程监控,质量管理,设备监控,计划执行等功能模块。” 为了深入探讨MES的核心功能,本文将从以下3个方面展开说明: 首先,从概…...

uniapp如何使用mumu模拟器
模拟器安装 下载地址:MuMu模拟器 模拟器相关设置 1.在设置-显示中选中手机版,设置手机分辨率 2.设置-关于手机-版本号快速点击,将其设置为开发者模式 3.选择多开器 4.打开hbuilderx,找到adb设置 5.配置adb路径及端口号&#x…...

【MATLAB源码-第64期】matlab基于DWA算法的机器人局部路径规划包含动态障碍物和静态障碍物。
操作环境: MATLAB 2022a 1、算法描述 动态窗口法(Dynamic Window Approach,DWA)是一种局部路径规划算法,常用于移动机器人的导航和避障。这种方法能够考虑机器人的动态约束,帮助机器人在复杂环境中安全、…...

UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
Qt Widget类解析与代码注释
#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码,写上注释 当然可以!这段代码是 Qt …...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互
引擎版本: 3.8.1 语言: JavaScript/TypeScript、C、Java 环境:Window 参考:Java原生反射机制 您好,我是鹤九日! 回顾 在上篇文章中:CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...
动态 Web 开发技术入门篇
一、HTTP 协议核心 1.1 HTTP 基础 协议全称 :HyperText Transfer Protocol(超文本传输协议) 默认端口 :HTTP 使用 80 端口,HTTPS 使用 443 端口。 请求方法 : GET :用于获取资源,…...

华为OD机考-机房布局
import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...
解决:Android studio 编译后报错\app\src\main\cpp\CMakeLists.txt‘ to exist
现象: android studio报错: [CXX1409] D:\GitLab\xxxxx\app.cxx\Debug\3f3w4y1i\arm64-v8a\android_gradle_build.json : expected buildFiles file ‘D:\GitLab\xxxxx\app\src\main\cpp\CMakeLists.txt’ to exist 解决: 不要动CMakeLists.…...