Web前端入门第 11 问:HTML 常用标签有多少?全量标签有多少?
HELLO,这里是大熊学习前端开发的入门笔记。
本系列笔记基于 windows 系统。
截止发文,MDN 收录的 HTML 全量标签有 126 个,有 18 个标记已弃用。
名词解释:MDN --- MDN Web Docs ( 前身为 Mozilla Developer Network ) 是一个开源的、由 Mozilla 基金会创建和维护的 Web 开发者资源库。
HTML 常用标签
根据大数据统计,在开发中常用的标签有 60 个左右,按功能区分如下:
- 文档结构标签
<!DOCTYPE>:文档类型声明
<html>:根元素
<head>:文档头部(包含元数据)
<title>:页面标题
<body>:文档主体内容
- 元数据与资源标签
<meta>:元信息(字符集、视口设置等)
<link>:引入外部资源(CSS、图标)
<style>:内联 CSS
<script>:JavaScript 代码或引用
- 语义化标签(HTML5)
<header>:页眉
<footer>:页脚
<nav>:导航栏
<article>:独立内容
<section>:内容区块
<aside>:侧边栏
<main>:主体内容
<menu>:交互式无序列表内容
<figure>、<figcaption>:图片/图表与说明
- 容器与布局标签
<div>:通用块级容器
<span>:通用行内容器
- 文本与段落标签
<h1>-<h6>:标题
<p>:段落
<span>:行内文本容器
<br>:换行
<hr>:水平分割线
<pre>:保留格式文本
<strong>:强调(粗体)
<em>:强调(斜体)
<blockquote>:长引用
- 链接与媒体标签
<a>:超链接
<img>:图片
<video>:视频
<audio>:音频
<source>:媒体资源(配合 video/audio 使用)
- 列表标签
<ul>:无序列表
<ol>:有序列表
<li>:列表项
<dl>、<dt>、<dd>:定义列表
- 表单与输入标签
<form>:表单容器
<input>:输入控件(文本、密码、按钮等)
<textarea>:多行文本输入
<select>、<option>:下拉选择
<label>:表单标签
<button>:按钮
<fieldset>、<legend>:表单分组
- 表格标签
<table>:表格
<tr>:表格行
<td>:单元格
<th>:表头单元格
<thead>、<tbody>、<tfoot>:表格结构
- 图形渲染
<canvas>: 2D 、3D 图形及图形动画绘制
- 内嵌框架元素
<iframe>:嵌入三方页面
总结
标签那么多,是不是光 HTML 都够喝一壶了?还学啥 css,js ?
说实话,除了功能性标签(1,2,4,6,8,10,11 中列出的标签,大约27个)无法替代,其他标签嘛...一言难尽!
就浏览器端渲染的 vue 项目来说,就一个 div 标签就可行走天下了。
推荐学习资源
MDN:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/a
w3school: https://www.w3school.com.cn/cssref/css_entities.asp
常用标签使用示例
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>HTML 常用标签一览</title>
<link rel="shortcut icon" href="https://www.baidu.com/favicon.ico" type="image/x-icon">
<style>
body {
font-size: 14px;
}
</style>
</head>
<body>
<h3>3. 语义化标签(HTML5)</h3>
<header>页眉</header>
<footer>页脚</footer>
<nav>导航栏</nav>
<article>独立内容</article>
<section>内容区块</section>
<aside>侧边栏</aside>
<main>主体内容</main>
<menu>
<li><button id="share">交互式无序列表内容</button></li>
</menu>
<figure>
<img src="https://interactive-examples.mdn.mozilla.net/media/cc0-images/elephant-660-480.jpg"
alt="Elephant at sunset" />
<figcaption>图片/图表与说明</figcaption>
</figure>
<h3>4. 容器与布局标签</h3>
<div>通用块级容器</div>
<span>通用行内容器</span>
<h3>5. 文本与段落标签</h3>
<h1>1级标题</h1>
<h2>2级标题</h2>
<h3>3级标题</h3>
<h4>4级标题</h4>
<h5>5级标题</h5>
<h6>6级标题</h6>
<p>段落</p>
<span>行内文本容器</span>
<br>换行</br>
<hr>水平分割线</hr>
<pre>保留格式文本</pre>
<strong>强调(粗体)</strong>
<em>强调(斜体)</em>
<blockquote>长引用</blockquote>
<h3>6. 链接与媒体标签</h3>
<a href="https://www.baidu.com">超链接</a>
<img src="https://interactive-examples.mdn.mozilla.net/media/cc0-images/elephant-660-480.jpg"
alt="Elephant at sunset">图片</img>
<video controls width="250">
<source src="https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.webm" type="video/webm" />
<source src="https://interactive-examples.mdn.mozilla.net/media/cc0-videos/flower.mp4" type="video/mp4" />
</video>
<div>视频</div>
<audio controls src="https://interactive-examples.mdn.mozilla.net/media/cc0-audio/t-rex-roar.mp3"></audio>
<div>音频</div>
<h3>7. 列表标签</h3>
<ul>
<li>无序列表项</li>
<li>无序列表项</li>
</ul>
<ol>
<li>有序列表项</li>
<li>有序列表项</li>
</ol>
<dl>
<dt>定义列表 dt</dt>
<dd>定义列表 dd</dd>
<dt>定义列表 dt</dt>
<dd>定义列表 dd</dd>
</dl>
<h3>8. 表单与输入标签</h3>
<form action="/submit-form" method="post">
<fieldset>
<legend>用户信息</legend>
<label for="username">用户名:</label>
<input type="text" id="username" name="username" required>
<br><br>
<label for="email">电子邮件:</label>
<input type="email" id="email" name="email" required>
<br><br>
<label for="password">密码:</label>
<input type="password" id="password" name="password" required>
<br><br>
<label for="bio">个人简介:</label>
<textarea id="bio" name="bio" rows="4" cols="50"></textarea>
<br><br>
<label for="gender">性别:</label>
<select id="gender" name="gender" required>
<option value="">请选择</option>
<option value="male">男</option>
<option value="female">女</option>
<option value="other">其他</option>
</select>
<br><br>
<button type="submit">提交</button>
<button type="reset">重置</button>
</fieldset>
</form>
<h3>9. 表格标签</h3>
<table>
<thead>
<tr>
<th>序号</th>
<th>姓名</th>
<th>年龄</th>
<th>城市</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>张三</td>
<td>28</td>
<td>北京</td>
</tr>
<tr>
<td>2</td>
<td>李四</td>
<td>34</td>
<td>上海</td>
</tr>
<tr>
<td>3</td>
<td>王五</td>
<td>22</td>
<td>广州</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="4">总计人数: 3</td>
</tr>
</tfoot>
</table>
<h3>10. 图形渲染</h3>
<canvas id="myCanvas"></canvas> 2D 、3D 图形及图形动画绘制(需要JS能力)
<h3>11. 内嵌框架元素</h3>
<!-- <iframe src="https://www.baidu.com/"></iframe> -->
<iframe src="./example-11.html"></iframe>
<script>
console.log('Hello World!')
const canvas = document.getElementById('myCanvas');
const ctx = canvas.getContext('2d');
// 设置画笔颜色
ctx.strokeStyle = 'blue';
// 开始路径
ctx.beginPath();
// 圆心位置 (x, y), 半径, 起始角度, 结束角度, 方向 (true为顺时针, false为逆时针)
ctx.arc(150, 75, 50, 0, Math.PI * 2, false);
// 闭合路径
ctx.closePath();
// 描边
ctx.stroke();
</script>
</body>
</html>
参考资料:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/a
Web前端入门第 11 问:HTML 常用标签有多少?全量标签有多少?的更多相关文章
- web前端关于html转义符的常用js函数
web前端关于html转义符的常用js函数 //去掉html标签 function removeHtmlTab(tab) { return tab.replace(/<[^<>]+? ...
- web前端入坑第五篇:秒懂Vuejs、Angular、React原理和前端发展历史
秒懂Vuejs.Angular.React原理和前端发展历史 2017-04-07 小北哥哥 前端你别闹 今天来说说 "前端发展历史和框架" 「前端程序发展的历史」 「 不学自知, ...
- Android零基础入门第11节:简单几步带你飞,运行Android Studio工程
原文:Android零基础入门第11节:简单几步带你飞,运行Android Studio工程 之前讲过Eclipse环境下的Android虚拟设备的创建和使用,现在既然升级了Android Studi ...
- Web前端开发最佳实践(5):正确闭合HTML标签,停止使用不标准的标签和属性
正确闭合HTML标签 HTML元素的内容模型定义了元素的结构,表明元素可以包含哪些内容以及元素可以有哪些属性.元素可以包含的内容包括其他元素和字符,但是也有一些元素是空元素,即不能包含任何内容,这些元 ...
- web前端入坑第二篇:web前端到底怎么学?干货资料! 【转】
http://blog.csdn.net/xllily_11/article/details/52145172 版权声明:本文为博主[小北]原创文章,如要转载请评论回复.个人前端公众号:前端你别闹,J ...
- Android程序员学WEB前端(1)-HTML(1)-标准结构常用标签-Sublime
转载请注明出处:http://blog.csdn.net/iwanghang/article/details/76522043觉得博文有用,请点赞,请评论,请关注,谢谢!~ 8月份了,换工作有2个月了 ...
- Android零基础入门第25节:最简单最常用的LinearLayout线性布局
原文:Android零基础入门第25节:最简单最常用的LinearLayout线性布局 良好的布局设计对于UI界面至关重要,在前面也简单介绍过,目前Android中的布局主要有6种,创建的布局文件默认 ...
- Android零基础入门第38节:初识Adapter
原文:Android零基础入门第38节:初识Adapter 在上一节一起了解了ListView的简单使用,那么本节继续来学习与ListView有着千丝万缕的Adapter. 一.了解MVC模式 在开始 ...
- Android零基础入门第88节:Fragment显示和隐藏、绑定和解绑
在上一期我们学习了FragmentManager和FragmentTransaction的作用,并用案例学习了Fragment的添加.移除和替换,本期一起来学习Fragment显示和隐藏.绑定和解绑. ...
- Android零基础入门第76节:Activity数据保存和横竖屏切换
在前面几期学习了Activity的创建.配置.启动和停止,还学了Activity的生命周期,本期一起来学习Activity有关的更多事儿. 一.数据保存 通过上一期 LogCat 窗口打印的日志可以看 ...
随机推荐
- Qt/C++开发经验小技巧301-305
从Qt5.2版本开始,QLineEdit文本框控件提供了setClearButtonEnabled函数用于是否开启右侧的关闭按钮,这种控件非常常见,比如还可以增加个搜索按钮,怎么添加呢,在5.2版本以 ...
- Qt/C++音视频开发64-共享解码线程/重复利用解码/极低CPU占用/画面同步/进度同步
一.前言 共享解码线程主要是为了降低CPU占用,重复利用解码,毕竟在一个监控系统中,很可能打开了同一个地址,需要在多个不同的窗口中播放,形成多屏渲染的效果,做到真正的完全的画面同步,在主解码线程中切换 ...
- Qt音视频开发02-海康sdk解码(支持句柄/回调/gpu模式/支持win/linux)
一.前言 为何还要选用使用海康sdk,之前不是ffmpeg已经牛皮吹上天了吗?这个问题问得好,那是因为无论ffmpeg也好还是vlc/mpv之类的,都是实现的播放相关,不同的监控硬件厂家对应设备还有很 ...
- JVM实战—9.线上FGC的几种案例
大纲 1.如何优化每秒十万QPS的社交APP的JVM性能(增加S区大小 + 优化内存碎片) 2.如何对垂直电商APP后台系统的FGC进行深度优化(定制JVM参数模版) 3.不合理设置JVM参数可能导致 ...
- 优化永不止步:TinyVue v3.20.0 正式发布,更美观的官网UI,更友好的文档搜索,更强大的主题配置能力~
你好,我是 Kagol,个人公众号:前端开源星球. 我们非常高兴地宣布,2024年12月4日,TinyVue 发布了 v3.20.0 . 本次 3.20.0 版本主要有以下重大变更: OpenTiny ...
- CDS标准视图:设备 I_Equipment
视图名称:I_Equipment 视图类型:基础视图 视图内容: 设备编码和设备内容 设备来源及详细信息 有效期 事务代码: IE03,IH08 视图代码 点击查看代码 @EndUserText.la ...
- 为了解决服务启动慢的问题,我为什么要给Apollo和Spring提交PR?
最近在整理之前记录的工作笔记时,看到之前给团队内一组服务优化启动耗时记录的笔记,简单整理了一下分享出来.问题原因并不复杂,主要是如何精准测量和分析,优化后如何定量测量优化效果,说人话就是用实际数据证明 ...
- JAVA多线程和并发性知识点总结
一. 什么是进程.线程?线程和进程的区别?1. 进程当一个程序进入内存运行时,即变成一个进程.进程是处于运行过程中的程序.进程是操作系统进行资源分配和调度的一个独立单位.进程的三个特征: 独立性独立存 ...
- Graph DataBase介绍-图数据库
前言分析社会关系这类复杂图壮结构的海量数据,使用图形数据库(Graph DataBase)是最好的选择.– 作者:李祎 <程序员>介绍各种NoSQL 数据库的文章已经很多,不过大部分都是基 ...
- 【分享】 100+ 套开源大数据可视化大屏Html5模板,全网最炫!
今天给大家分享 100+ 套开源大数据可视化炫酷大屏Html5模板,全网最新.最多.最全.最酷.最炫的大数据可视化模板! 项目介绍 BigDataView提供了100+套大数据可视化炫酷大屏Html5 ...