HELLO,这里是大熊学习前端开发的入门笔记。

本系列笔记基于 windows 系统。


截止发文,MDN 收录的 HTML 全量标签有 126 个,有 18 个标记已弃用

名词解释:MDN --- MDN Web Docs ( 前身为 Mozilla Developer Network ) 是一个开源的、由 Mozilla 基金会创建和维护的 Web 开发者资源库。

HTML 常用标签

根据大数据统计,在开发中常用的标签有 60 个左右,按功能区分如下:

  1. 文档结构标签

<!DOCTYPE>:文档类型声明

<html>:根元素

<head>:文档头部(包含元数据)

<title>:页面标题

<body>:文档主体内容

  1. 元数据与资源标签

<meta>:元信息(字符集、视口设置等)

<link>:引入外部资源(CSS、图标)

<style>:内联 CSS

<script>:JavaScript 代码或引用

  1. 语义化标签(HTML5)

<header>:页眉

<footer>:页脚

<nav>:导航栏

<article>:独立内容

<section>:内容区块

<aside>:侧边栏

<main>:主体内容

<menu>:交互式无序列表内容

<figure><figcaption>:图片/图表与说明

  1. 容器与布局标签

<div>:通用块级容器

<span>:通用行内容器

  1. 文本与段落标签

<h1>-<h6>:标题

<p>:段落

<span>:行内文本容器

<br>:换行

<hr>:水平分割线

<pre>:保留格式文本

<strong>:强调(粗体)

<em>:强调(斜体)

<blockquote>:长引用

  1. 链接与媒体标签

<a>:超链接

<img>:图片

<video>:视频

<audio>:音频

<source>:媒体资源(配合 video/audio 使用)

  1. 列表标签

<ul>:无序列表

<ol>:有序列表

<li>:列表项

<dl><dt><dd>:定义列表

  1. 表单与输入标签

<form>:表单容器

<input>:输入控件(文本、密码、按钮等)

<textarea>:多行文本输入

<select><option>:下拉选择

<label>:表单标签

<button>:按钮

<fieldset><legend>:表单分组

  1. 表格标签

<table>:表格

<tr>:表格行

<td>:单元格

<th>:表头单元格

<thead><tbody><tfoot>:表格结构

  1. 图形渲染

<canvas>: 2D 、3D 图形及图形动画绘制

  1. 内嵌框架元素

<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 常用标签有多少?全量标签有多少?的更多相关文章

  1. web前端关于html转义符的常用js函数

    web前端关于html转义符的常用js函数 //去掉html标签 function removeHtmlTab(tab) { return tab.replace(/<[^<>]+? ...

  2. web前端入坑第五篇:秒懂Vuejs、Angular、React原理和前端发展历史

    秒懂Vuejs.Angular.React原理和前端发展历史 2017-04-07 小北哥哥 前端你别闹 今天来说说 "前端发展历史和框架" 「前端程序发展的历史」 「 不学自知, ...

  3. Android零基础入门第11节:简单几步带你飞,运行Android Studio工程

    原文:Android零基础入门第11节:简单几步带你飞,运行Android Studio工程 之前讲过Eclipse环境下的Android虚拟设备的创建和使用,现在既然升级了Android Studi ...

  4. Web前端开发最佳实践(5):正确闭合HTML标签,停止使用不标准的标签和属性

    正确闭合HTML标签 HTML元素的内容模型定义了元素的结构,表明元素可以包含哪些内容以及元素可以有哪些属性.元素可以包含的内容包括其他元素和字符,但是也有一些元素是空元素,即不能包含任何内容,这些元 ...

  5. web前端入坑第二篇:web前端到底怎么学?干货资料! 【转】

    http://blog.csdn.net/xllily_11/article/details/52145172 版权声明:本文为博主[小北]原创文章,如要转载请评论回复.个人前端公众号:前端你别闹,J ...

  6. Android程序员学WEB前端(1)-HTML(1)-标准结构常用标签-Sublime

    转载请注明出处:http://blog.csdn.net/iwanghang/article/details/76522043觉得博文有用,请点赞,请评论,请关注,谢谢!~ 8月份了,换工作有2个月了 ...

  7. Android零基础入门第25节:最简单最常用的LinearLayout线性布局

    原文:Android零基础入门第25节:最简单最常用的LinearLayout线性布局 良好的布局设计对于UI界面至关重要,在前面也简单介绍过,目前Android中的布局主要有6种,创建的布局文件默认 ...

  8. Android零基础入门第38节:初识Adapter

    原文:Android零基础入门第38节:初识Adapter 在上一节一起了解了ListView的简单使用,那么本节继续来学习与ListView有着千丝万缕的Adapter. 一.了解MVC模式 在开始 ...

  9. Android零基础入门第88节:Fragment显示和隐藏、绑定和解绑

    在上一期我们学习了FragmentManager和FragmentTransaction的作用,并用案例学习了Fragment的添加.移除和替换,本期一起来学习Fragment显示和隐藏.绑定和解绑. ...

  10. Android零基础入门第76节:Activity数据保存和横竖屏切换

    在前面几期学习了Activity的创建.配置.启动和停止,还学了Activity的生命周期,本期一起来学习Activity有关的更多事儿. 一.数据保存 通过上一期 LogCat 窗口打印的日志可以看 ...

随机推荐

  1. Linux readonly

    1. 概念readonly在shell脚本中,用来标记变量是只读的,后续执行过程中就不能对其值进行改变,这个用来定义一些常量类的变量. 如果对其进行重新赋值,会提示错误 [root@localhost ...

  2. SpringBoot:通过多个Context限制Bean的活动范围

    从Spring的包扫描说起 SpringBoot会扫描SpringBootApplication注解标注的类,他所在的包以及这个包的子包,把那里面的Bean注册到applicationContext中 ...

  3. Qt/C++离线读取全国任意经纬度高程海拔值/无任何依赖/纯原创代码解析

    一.前言说明 做地图开发会遇到一个常规需求,就是获取当前经纬度对应的海拔高度,也叫做高程值,很遗憾各大地图厂商都未提供接口获取,可能是有明文规定,不能地图中提供对应的海拔高度值,于是需要另想他法,尽管 ...

  4. C#使用Tesseract C++ API过程记录

    Tesseract Tesseract 是一个开源的光学字符识别(OCR)引擎,最初由 Hewlett-Packard(惠普)实验室开发,后来由 Google 收购并继续维护和开源贡献.Tessera ...

  5. Error: Assertion failed (nimages > 0) in cv::calibrateCameraRO, file D:\opencv4\opencv\opencv-4.1.0\modules\calib3d\src\calibration.cpp, line 3691

    报错信息: Error: Assertion failed (nimages > 0) in cv::calibrateCameraRO, file D:\opencv4\opencv\open ...

  6. Solution -「NOI 2017」「洛谷 P3824」泳池

    \(\mathscr{Description}\)   Link.   给定 \(n,k,p\), 求在一个 \(\infty\times n\) 的矩阵中, 每个位置的值以 \(p\) 的概率为 \ ...

  7. crontab 定时任务详细讲解

    crontab crontab的服务进程名为crond,英文意为周期任务.crontab在Linux主要用于周期定时任务管理.通常安装操作系统后,默认已启动crond服务.crontab可理解为cro ...

  8. C++类相互包含

    1. 两个类需要相互包含的情景 在观察者模式中,气象站的数据送给某些布告牌. 气象站要知道通知哪些布告牌,所以气象站类至少有一个布告牌类型的链表. 布告牌需要把自己注册到气象站类,告诉气象站类自己已经 ...

  9. python包学习:-了解

    本节先做一些了解. numpy 参考:NumPy使用 NumPy 教程 NumPy是Python中科学计算的基础包.它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于 ...

  10. DVR4 pg walkthrough Intermediate window

    nmap ┌──(root㉿kali)-[~/lab] └─# nmap -p- -A -sS 192.168.219.179 Starting Nmap 7.94SVN ( https://nmap ...