当前位置: 首页 > news >正文

web前端 - HTML 基础知识大揭秘

HTML 大揭秘

什么是 HTML

HTMLHyper Text Markup Language),中文译为超文本标记语言。其中,我们需要注意两个关键词。一个是 超文本,一个是 标记。所谓超文本,就是将不同空间的文字信息通过超链接的方式组织在一起的网状文本,往简单了将就是我们说的链接。而标记的另一个名字也叫标签,就是网页源码中带尖括号(<>)的文本。

常用语法

1. 标签

<h1>泡芙萝莉酱
</h1>

以上就是一个标签示例,其中 <h1> 叫做 开始标签,而 </h1> 叫做 结束标签

通过观察,可以发现标签的主要特点,分别是:

  • 标签成对出现,标签中间包裹内容。
  • 标签由尖括号(<>)中加英文单词共同组成,而这个英文单词,就叫做标签名。
  • 相比于开始标签,结束标签多了 /

此外,标签还有不同的分类,一类是单标签,而另一类则是双标签。

单标签指的是那些只有开始标签,没有结束标签的标签,而双标签则是那些成对出现的标签。

2. HTML 基本骨架

<html><head>网页头部</head><body>网页主题内容</body>
</html>

以上就是 HTML 的基本骨架,网页所有内容都包含在 html 标签中。网页中,主要由头部 head 和主体 body 共同组成。其中头部用于存放给浏览器使用的信息,比如 CSS 样式、JS 脚本。而网页主体则存放展示给用户的信息,如图片、文字、视频等。

3. 标签之间的关系

各标签之间,最主要的有两种关系,一种是 嵌套关系,一种是 并列关系,而它们存在的意义就是让我们明确标签的书写位置,让代码格式更加整齐,提高代码可读性。

以基本骨架中的代码来说,htmlhead 是嵌套关系,而 headbody 之间的关系则是并列关系。

  • 嵌套关系
<html><head></head>
</html>
  • 并列关系
<head></head>
<body></body>

4. 注释

注释就是对代码的解释说明,存在的意义是让开发者能更加轻松地了解代码。一般是开发者在编码时为某些语句、程序段、函数等添加的提示,从而提高代码的可读性,方便其他开发者快速掌握,也方便后续代码修改。

<!-- 注释内容 -->

5. 标题

一般用在文章标题、网页区域名称、产品名称等,共分为 6 级标题,对应的标签分别是:

<h1>一级标题</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
<h4>四级标题</h4>
<h5>五级标题</h5>
<h6>六级标题</h6>

在日常使用时需要注意,一个网页中 h1 一般只能使用一次,而 h2~h6 则没有使用次数的限制。

6. 段落

一般用于文章段落、产品描述信息等。该标签会自动在其前后创建一些空白,浏览器将自动添加这些空间。

<p></p>

7. 换行 & 水平线

  • 换行
<br>
  • 水平线
<hr>

不同于其他双标签,这两个标签都属于单标签,用于实现文本换行和在文本中间添加水平线。

8. 文本格式化

可以给文本添加特殊格式,比如加粗、斜体、下划线、删除线等效果。

  • 加粗
<b>泡芙萝莉酱</b>
<strong>泡芙萝莉酱</strong>
  • 斜体
<i>泡芙萝莉酱</i>
<em>泡芙萝莉酱</em>
  • 下划线
<u>泡芙萝莉酱</u>
<ins>泡芙萝莉酱</ins>
  • 删除线
<s>泡芙萝莉酱</s>
<del>泡芙萝莉酱</del>

9. 图片

为了在网页中插入图片,可以使用图像标签,其使用语法如下:

<img src="图片地址">

其中,src 属性用于指定图片位置和名称,是 img 标签不可缺少的属性。

除开 src 属性之外, img 最常用的标签还有下表中的几个。

属性作用说明
alt替换文本图片无法显示时展示的文字
title提示文本鼠标悬停时显示的文字
width设置图片宽度值一般是数字
height设置图片高度值一般是数字

注意,标签中存在多个属性时,属性之间用空格隔开,且没有先后顺序之分。

10. 超链接

通过使用超链接,能够实现鼠标点击后跳转到其他页面的效果。

<a href="跳转页面地址"></a>

其中,href 是必需属性,用于指定跳转的页面地址,当 href 属性的值为 #,则表示该链接为空链接,点击后不会进行跳转。除此之外,a 标签还有 target 属性,用于指定是否在新窗口中打开跳转页面。当属性值为 _blank 时,表示在新窗口打开。默认情况下,表示在当前窗口打开。

11. 音频

使用该标签往网页中添加音频,使用语法如下。

<audio src="音频地址"></audio>

常见属性如下表:

属性作用说明
src音频地址必需属性,支持 MP3Wav
controls是否显示音频控制面板
loop是否循环播放
autoplay是否自动播放

12. 视频

<video src="视频地址"></video>
属性作用说明
src视频地址必需属性,支持 MP4WebM
controls是否显示视频控制面板
loop是否循环播放
muted是否静音播放
autoplay是否自动播放必须在开启静音播放的前提下才能生效

13. 列表

用于布局内容排列整齐的区域,主要分为:无序列表有序列表定义列表

(1)无序列表

<ul><li>JavaPark</li><li>ebooks</li>
</ul>

用于布局排列整齐的无序规定顺序的区域,语法为 <ul> 标签嵌套 <li> 标签,其中 <ul> 标签表示无序列表,而 <li> 则代表无序列表中的条目。需要注意, <ul> 标签中只能包裹 <li> 标签。

(2)有序列表

<ol><li>JavaPark</li><li>ebooks</li>
</ol>

用于布局排列整齐的规定顺序的区域,语法为 <ol> 标签嵌套 <li> 标签,其中 <ol> 标签表示无序列表,而 <li> 则代表无序列表中的条目。而且需要注意, <ol> 标签中只能包裹 <li> 标签。

(3)定义列表

<dl><dt>开源项目</dt><dd>JavaPark</dd><dd>ebooks</dd>
</dl>

语法为 <dl> 嵌套 <dt><dd> 标签,其中 <dl> 用于定义列表,<dt> 用于定义列表标题,<dd> 则用于定义列表的描述/详情。注意, <dl> 标签中只能包裹 dt><dd> 标签。

14. 表格

类似于日常使用中的 Excel,主要用于展示数据。注意,默认情况下,网页中的表格是没有边框线的,需要使用border 属性添加。

标签说明
table表格
tr
th表头单元格
td内容单元格
<table><tr><td>项目</td><td>链接</td></tr><tr><td>JavaPark</td><td>https://github.com/cunyu1943/JavaPark</td></tr>
</table>

为了让表格结构和语义更加清晰,通常还是用表格结构标签用来划分区域。下表是表格结构标签的说明。

标签含义说明
thead表格头部表格头部内容
tbody表格主体主要内容区域
tfoot表格底部汇总信息区域

合并单元格:将多个单元格合并为一个单元格,用于合并同类信息。又可以分为跨行合并和跨列合并,合并步骤如下:

  • 保留最左最上的单元格,添加属性(值为数字,表示需要合并的单元格数量)
    • 跨行合并:保留最上的单元格,添加属性 rowspan
    • 跨列合并:保留最左的单元格,添加属性 colspan

15. 表单

(1)input

用于在网页中收集信息。

<input type="text">

根据标签中 type 属性的值不同,从而具备不同的功能。

type 属性值说明
text文本框,用于输入单行文本
password密码框
radio单元框
checkbox多选框
file上传文件

为了在输入时更加友好,可以在文本框和密码框中使用 placeholder 来进行提示。

针对单选框,常用属性如下表。

属性作用说明
name控件名控件分组,一组只能选一个
checked默认选中属性名和属性值相同,简写为一个单词
<input type="radio" name="gender" checked><input type="radio" name="gender">

文件上传时,默认上传表单控件只能上传一个文件,如果要实现文件多选功能,需要添加 multiple 属性。

<input type="file" multiple>

(2)下拉菜单

<select> 嵌套 <option>,其中 <select> 表示下拉菜单整体,而 <option> 则是下来菜单中的每一项,selected 属性表示默认选中项目。

<select><option>JavaPark</option><option>ebooks</option>
</select>

(3)文本域

用于输入多行文本的表单控件,默认可拖拽。

<textarea>请输入评论</textarea>

(4)label

网页中对于某个标签的说明文本。一般可以用 <label> 标签绑定文字和表单控件的关系,从而增大表单控件的点击范围。实现以上功能有两种方式:

  • 方式一:<label> 只包裹内容,不包裹表单控件。设置 <label>for 属性值和表单控件的 id 属性值一致。
<input type="radio" id="game">
<label for="game">游戏</label>
  • 方式二:用 <label> 直接包裹文字和表单控件,此时无需设置额外属性。
<label><input type="radio">游戏</label>

(5)按钮

属性值说明
submit提交,点击后将数据提交到后台,默认功能
reset重置,点击后将表单控件恢复默认值
button普通按钮,默认无功能,需要配合 JavaScript 使用
<button type="reset">重置</button>

16. 布局

用于划分网页区域摆放内容,实现网页布局。

(1)div

独占一行,又叫大盒子。

(2)span

不单独另起一行,又叫小盒子。

17. 字符

用于在网页中显示预留字符。

显示描述实体名
空格&nbsp;
>大于&gt;
<小于&lt;

相关文章:

web前端 - HTML 基础知识大揭秘

HTML 大揭秘 什么是 HTML HTML&#xff08;Hyper Text Markup Language&#xff09;&#xff0c;中文译为超文本标记语言。其中&#xff0c;我们需要注意两个关键词。一个是 超文本&#xff0c;一个是 标记。所谓超文本&#xff0c;就是将不同空间的文字信息通过超链接的方式…...

HTML meta

<meta>标签用于提供html文档的元信息&#xff08;metadata&#xff09;。这些信息不会显示在页面上&#xff0c;但会被浏览器或搜索引擎用来识别页面的编码方式、关键字、描述、作者信息、刷新时间等。 基本语法 <meta name"属性名" content"属性值&q…...

【学习笔记】子集DP

背景 有一类问题和子集有关。 给你一个集合 S S S&#xff0c;令 T T T 为 S S S 的超集&#xff0c;也就是 S S S 所有子集的集合&#xff0c;求 T T T 中所有元素的和。 暴力1 先预处理子集的元素和 A i A_i Ai​&#xff0c;再枚举子集。 for(int s0; s<(1<…...

苦学Opencv的第十四天:人脸检测和人脸识别

Python OpenCV入门到精通学习日记&#xff1a;人脸检测和人脸识别 前言 经过了十三天的不懈努力&#xff0c;我们终于也是来到了人脸检测和人脸识别啦&#xff01;相信大家也很激动吧。接下来我们开始吧&#xff01; 人脸识别是基于人的脸部特征信息进行身份识别的一种生物识…...

PyTorch学习(1)

PyTorch学习&#xff08;1&#xff09; CIFAR-10数据集-图像分类 数据集来源是官方提供的&#xff1a; torchvision.datasets.CIFAR10()共有十类物品&#xff0c;需要用CNN实现图像分类问题。 代码如下&#xff1a;(CIFAR_10_Classifier_Self_1.py) import torch import t…...

三思而后行:计算机行业的决策智慧

在计算机行业&#xff0c;"三思而后行"这一原则显得尤为重要。在这个快速发展、技术不断更新换代的领域&#xff0c;每一个决策都可能对项目的成功与否产生深远的影响。以下是一篇关于在计算机行业中三思重要性的文章。 三思而后行&#xff1a;计算机行业的决策智慧 …...

Linux--Socket编程UDP

前文&#xff1a;Socket套接字编程 UDP协议特点 无连接&#xff1a;UDP在发送数据之前不需要建立连接&#xff0c;减少了开销和发送数据之前的时延。尽最大努力交付&#xff1a;UDP不保证可靠交付&#xff0c;主机不需要维持复杂的连接状态表。面向报文&#xff1a;UDP对应用层…...

《javaEE篇》--单例模式详解

目录 单例模式 饿汉模式 懒汉模式 懒汉模式(优化) 指令重排序 总结 单例模式 单例模式属于一种设计模式&#xff0c;设计模式就好比是一种固定代码套路类似于棋谱&#xff0c;是由前人总结并且记录下来我们可以直接使用的代码设计思路。 单例模式就是&#xff0c;在有…...

Java核心 - Lambda表达式详解与应用示例

作者&#xff1a;逍遥Sean 简介&#xff1a;一个主修Java的Web网站\游戏服务器后端开发者 主页&#xff1a;https://blog.csdn.net/Ureliable 觉得博主文章不错的话&#xff0c;可以三连支持一下~ 如有疑问和建议&#xff0c;请私信或评论留言&#xff01; 前言 Lambda表达式是…...

算法通关:006_1二分查找

二分查找 查找一个数组里面是否存在num主要代码运行结果 详细写法自动生成数组和num&#xff0c;利用对数器查看二分代码是否正确 查找一个数组里面是否存在num 主要代码 /*** Author: ggdpzhk* CreateTime: 2024-07-27*/ public class cg {//二分查找public static boolean …...

总结一些vue3小知识3

总结一些vue3小知识1&#xff1a;http://t.csdnimg.cn/C5vER 总结一些vue3小知识2&#xff1a;http://t.csdnimg.cn/sscid 1.限制时间选择器只能选择后面的日期 说明&#xff1a;disabled-date属性是一个用来判断该日期是否被禁用的函数&#xff0c;接受一个 Date 对象作为参…...

JAVAWeb实战(前端篇)

项目实战一 0.项目结构 1.创建vue3项目&#xff0c;并导入所需的依赖 npm install vue-router npm install axios npm install pinia npm install vue 2.定义路由&#xff0c;axios&#xff0c;pinia相关的对象 文件&#xff08;.js&#xff09; 2.1路由(.js) import {cre…...

axios请求大全

本文讲解axios封装方式以及针对各种后台接口的请求方式 axios的介绍和基础配置可以看这个文档: 起步 | Axios中文文档 | Axios中文网 axios的封装 axios封装的重点有三个&#xff0c;一是设置全局config,比如请求的基础路径&#xff0c;超时时间等&#xff0c;第二点是在每次…...

C# 简单的单元测试

文章目录 前言参考文档新建控制台项目新建测试项目添加引用添加测试方法测试结果(有错误)测试结果&#xff0c;通过正规的方法抛出异常 总结 前言 听说复杂的项目最好都要单元测试一下。我这里也试试单元测试这个功能。到时候调试起来也方便。 参考文档 C# 单元测试&#xf…...

Linux中Mysql5.7主从架构(一主多从)配置教程

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f427;Linux基础知识(初学)&#xff1a;点击&#xff01; &#x1f427;Linux高级管理防护和群集专栏&#xff1a;点击&#xff01; &#x1f510;Linux中firewalld防火墙&#xff1a;点击&#xff01; ⏰️创作…...

BACnet物联网关BL103:Modbus协议转BACnet/MSTP

随着物联网技术在楼宇自动化与暖通控制系统中的迅猛发展&#xff0c;构建一种既经济高效又高度可靠的协议转换物联网关成为了不可或缺的核心硬件组件。在此背景下&#xff0c;我们钡铼特别推荐一款主流的BAS&#xff08;楼宇自动化系统&#xff09;与BACnet物联网关——BL103&a…...

Go 语言条件变量 Cond

1.Cond 的使用方法 Go 标准库提供 Cond 同步原语的目的是为等待/通知场景下的并发操作提供支持。Cond 通常用于等待某个条件的一组 goroutine,当条件变为 true 时,其中一个或者所有的 goroutine 会被唤醒执行。 Cond 与某个条件相关,这个条件需要一组 goroutine 协作达到。当这…...

PostgreSQL 中如何重置序列值:将自增 ID 设定为特定值开始

我是从excel中将数据导入&#xff0c;然后再通过sql插入数据&#xff0c;就报错。 需要设置自增ID开始值 1、确定序列名称&#xff1a; 首先&#xff0c;需要找到与的增字段相关的序列名称。假设表名是 my_table 和自增字段是 id&#xff0c;可以使用以下查询来获取序列名称…...

Unity 之 【Android Unity 共享纹理】之 Android 共享图片给 Unity 显示

Unity 之 【Android Unity 共享纹理】之 Android 共享图片给 Unity 显示 目录 Unity 之 【Android Unity 共享纹理】之 Android 共享图片给 Unity 显示 一、简单介绍 二、共享纹理 1、共享纹理的原理 2、共享纹理涉及到的关键知识点 3、什么可以实现共享 不能实现共享…...

Go语言的数据结构

数据结构 数组 支持多维数组&#xff0c;属于值类型&#xff0c;支持range遍历 例子&#xff1a;随机生成长度为10整数数组 package main import ("fmt""math/rand" ) // 赋值 随机获取100以内的整数 func RandomArrays() {var array [10]int //声明var…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

PHP和Node.js哪个更爽?

先说结论&#xff0c;rust完胜。 php&#xff1a;laravel&#xff0c;swoole&#xff0c;webman&#xff0c;最开始在苏宁的时候写了几年php&#xff0c;当时觉得php真的是世界上最好的语言&#xff0c;因为当初活在舒适圈里&#xff0c;不愿意跳出来&#xff0c;就好比当初活在…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)

概述 在 Swift 开发语言中&#xff0c;各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过&#xff0c;在涉及到多个子类派生于基类进行多态模拟的场景下&#xff0c;…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

ip子接口配置及删除

配置永久生效的子接口&#xff0c;2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...

A2A JS SDK 完整教程:快速入门指南

目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库&#xff…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...

从面试角度回答Android中ContentProvider启动原理

Android中ContentProvider原理的面试角度解析&#xff0c;分为​​已启动​​和​​未启动​​两种场景&#xff1a; 一、ContentProvider已启动的情况 1. ​​核心流程​​ ​​触发条件​​&#xff1a;当其他组件&#xff08;如Activity、Service&#xff09;通过ContentR…...

【前端异常】JavaScript错误处理:分析 Uncaught (in promise) error

在前端开发中&#xff0c;JavaScript 异常是不可避免的。随着现代前端应用越来越多地使用异步操作&#xff08;如 Promise、async/await 等&#xff09;&#xff0c;开发者常常会遇到 Uncaught (in promise) error 错误。这个错误是由于未正确处理 Promise 的拒绝&#xff08;r…...

高考志愿填报管理系统---开发介绍

高考志愿填报管理系统是一款专为教育机构、学校和教师设计的学生信息管理和志愿填报辅助平台。系统基于Django框架开发&#xff0c;采用现代化的Web技术&#xff0c;为教育工作者提供高效、安全、便捷的学生管理解决方案。 ## &#x1f4cb; 系统概述 ### &#x1f3af; 系统定…...