HTML5概述 - 语义化标签

HTML5新增的语义化标签 系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例 阅读详情

一、HTML5 简介

1、什么是 HTML5

HTML5 不是一门新的语言,而是我们之前学习的 HTML 的第五次重大修改版本。

2、HTML 的发展历史

•超文本标记语言(第一版,不叫 HTML 1.0)——在 1993 年 6 月作为互联网工程工作小组(IETF)工作草案发布(并非标准);•HTML 2.0——1995 年 11 月作为 RFC 1866 发布,在 RFC 2854 于 2000 年 6 月发布之后被宣布已经过时•HTML 3.2——1997 年 1 月 14 日,W3C 推荐标准•HTML 4.0——1997 年 12 月 18 日,W3C 推荐标准•HTML 4.01(微小改进)——1999 年 12 月 24 日,W3C 推荐标准•HTML 5——2014 年 10 月 28 日,W3C 推荐标准

3、HTML5 的设计目的

HTML5 的设计目的是为了在移动设备上支持多媒体。之前网页如果想嵌入视频音频,需要用到 flash ,但是苹果设备是不支持 flash 的,所以为了改变这一现状,html5 应运而生。

新的语法特征被引进以支持视频音频,如 video、audio 和 canvas 标记。

HTML5 还引进了新的功能,可以真正改变用户与文档的交互方式。比如增加了新特性:语义标签,本地存储,网页多媒体等等,以及 CSS3 特性。

相比之前的进步:

•取消了一些过时的 HTML4 标签•新的表单控件(比如 date、time、email、url、search)•语义化标签(比如 article、footer、header、nav、section)•对本地离线存储的更好的支持•用于绘画的 canvas 元素•用于多媒体的 video 和 audio 元素

二、语义化标签

1、什么是语义化标签?

类似于 p,span,img 等这样的,看见标签就知道里面应该保存的是什么内容的是语义化标签。

像 div 这样的里面可以装任意东西的就是非语义化标签。

以前我们要做下面这个结构可能会这么布局:

3ba7cb6c5f591e018fb65bdbb0425c20.png

<div class="header"></div>
<div class="nav"></div>
<div class="main">
  <div class="left"></div>
  <div class="right"></div>
</div>
<div class="footer"></div>

那么在 html5 下语义化标签怎么做呢?

1543eb58d47dca229ec1c294f6d7ec68.png

<header></header>
<nav></nav>
<main>
  <article></article>
  <aside></aside>
</main>
<footer></footer>

是不是语义化的代码结构更清晰、简洁呢?

2、HTML5 部分新增的标签

2.1、结构标签

•header:一个区块的头部信息/标题;•footer:一个区块的底部信息;•nav:导航栏区域;•section:一个通用独立章节或者区域。一般来说会包含一个标题。•article:一块独立区块,表示一块相对比较独立的内容;•aside:表示一个和主体内容几乎无关的部分,可以被单独的拆分出来而不会使整体受影响。

2.2、表单标签

•email:邮件控件;•url:地址控件;•range:数字范围控件;•日期选择器:•date:选取日、月、年•month:选取月、年•week:选取周和年•time:选取时间(小时和分钟)•datetime:选取时间、日、月、年(UTC 时间)•datetime-local:选取时间、日、月、年(本地时间)•search:搜索控件;•color:颜色控件

<form action="">
  <fieldset>
    <legend>学生档案</legend>
    <label for="userName">姓名:</label>
    <input
      type="text"
      name="userName"
      id="userName"
      placeholder="请输入用户名"
    /><br />


    <label for="userPhone">手机号码:</label>
    <input
      type="tel"
      name="userPhone"
      id="userPhone"
      pattern="^1\d{10}$"
    /><br />


    <label for="email">邮箱地址:</label>
    <input type="email" required name="email" id="email" />
    <br />


    <label for="collage">所属学院:</label>
    <input
      type="text"
      name="collage"
      id="collage"
      list="cList"
      placeholder="请选择"
    />
    <datalist id="cList">
      <option value="前端学院"></option>
      <option value="后端学院"></option>
      <option value="C语言学院"></option></datalist
    ><br />


    <label for="level">基础水平:</label>
    <meter id="level" value="60" max="100" min="0" low="59" high="90"></meter>
    <br />


    <label for="inTime">入学日期:</label>
    <input type="date" id="inTime" name="inTime" />
    <br />


    <label for="leaveTime">毕业日期:</label>
    <input type="date" id="leaveTime" name="leaveTime" />
  </fieldset>
</form>

e0e98c71db91525a4dc1ec215571ea3a.png

表单标签新增的一些属性:

•autofocus:自动获取焦点•required:不能为空•disabled:禁用•hidden:隐藏

2.3、媒体标签

•video:视频;•audio:音频;•embed:嵌入内容(包括各种媒体),Midi、Wav、AU、MP3、Flash、AIFF 等。

<body>
  <!--audio:音频-->
  <!--
src:播放文件的路径
controls:音频播放器的控制器面板
autoplay:自动播放
loop:循环播放
muted:静音
preload: 
    auto 默认加载音频文件所有数据;  
    metadata:仅加载多媒体文件元数据(文件属性,比如文件时长,音质信息等)
    none: 不加载任何内容。
-->
  <audio src="../mp3/aa.mp3" controls></audio>


  <!--video:视频-->
  <!--
src:播放文件的路径
controls:音频播放器的控制器面板
autoplay:自动播放
loop:循环播放
poster:指定视频还没有完全下载完毕,或者用户没有点击播放前显示的封面。 默认显示当前视频文件的第一副图像
width:视频的宽度
height:视频的高度
-->
  <!--注意事项:视频始终会保持原始的宽高比。意味着如果你同时设置宽高,并不是真正的将视频的画面大小设置为指定的大小,而只是将视频的占据区域设置为指定大小,除非你设置的宽高刚好就是原始的宽高比例。所以建议:在设置视频宽高的时候,一般只会设置宽度或者高度,让视频文件自动缩放-->
  <video
    src="../mp3/mp4.mp4"
    poster="../images/l1.jpg"
    controls
    height="600"
  ></video>


  <!--source:因为不同的浏览器所支持的视频格式不一样,为了保证用户能够看到视频,我们可以提供多个视频文件让浏览器自动选择-->
  <video src="../mp3/flv.flv" controls></video>
  <video controls>
    <!--视频源,可以有多个源-->
    <source src="../mp3/flv.flv" type="video/flv" />
    <source src="../mp3/mp4.mp4" type="video/mp4" />
  </video>
</body>

注意:Chrome 在 2018 年 4 月份更新后关闭了 audio、video 媒体标签的 autoplay 自动播放 , 这个改变是在 Google Chrome 版本 66 开始的时候,不再自动开始播放音频和视频文件,阻止对广告视频和其他烦人的网页元素进行自动播放,原因大概是为了提高用户体验,防止一进入网页会自动播放声音过大的音频。在之后测试发现火狐浏览器也有类似情况发生。

测试后发现,如果使用的是 video 标签,可以添加 muted 属性,这样视频可以自动播放,但是是为静音模式。

媒体标签的方法:(20190221)

参考链接:HTML 音频/视频 - 菜鸟教程[1]

可以通过 js 控制音视频的播放:(所有网页音视频的控制都应该使用 js 控制,播放的控件自己画,这样才能达到跨平台界面相同。)

参看链接:http://www.w3school.com.cn/tags/html_ref_audio_video_dom.asp

1、获取媒体标签的 dom 元素(例如叫 mdom)

2、控制媒体的行为的方法和属性和触发事件。

// 方法
mdom.play() // 开始播放
mdom.pause() // 暂停播放
mdom.load() // 重新加载音视频


// 属性
autoplay // 设置或返回歌曲是否自动播放
controls // 设置或返回是否显示原生播放控件
currentSrc // 获取当前的播放地址
paused // 是否是暂停状态
currentTime: // 获取或者设置当前音视频播放时长
defaultMuted // 设置或返回当前音频视频是否默认静音
muted      // 设置或返回当前音视频是否静音
duration    // 返回当前音频/视频的长度(以秒计)。需要在媒体加载完成后获取
       // 一般使用  mdom.addEventListener('durationchange',function() {
        //               console.log(this.duration)
         //         }
defaultPlaybackRate // 设置或返回默认的播放速度
                    // 正值为正向播放,负值为负向播放
                  // 1 为正常速度, <1 慢速, >1 加速
playbackRate     // 设置或返回当前的播放速度,值同上
ended  // 返回当前资源是否播放结束
error   // 返回播放错误信息
loop   // 设置或返回是否循环播放


preload // 设置加载机制(自动,metadata,none)
readyState  // 返回当前音视频是否准备完毕
volume    // 设置或返回当前音量




// 事件
canplay // 当前资源可以被播放的时候
durationchange // 当播放总时长发送改变的时候
pause      // 当前资源被暂停时
play       // 当前资源被播放时
playing    // 包含上面play时机,但是因网络原因导致播放终止而后重新开始播放时只会触发playing
ratechange // 播放速度发生变化时触发
seeked     // 由用户更改当前播放时长时触发
seeking    // 由用户刚开始更改播放时长时触发
timeupdate // 当播放位置发生变化时触发(无论是否由用户操作)
volumechange  // 当音量发生变化时触发
2.4、其他功能标签

•mark:标注;•progress:进度条;•<progress max="100" value="20"></progress>•time:数据标签,给搜索引擎使用;•发布日期 <time datetime="2014-12-25T09:00">9:00</time>•更新日期 <time datetime="2015-01-23T04:00" pubdate>4:00</time>•ruby 和 rt:对某一个字进行注释;•<ruby> 汉 <rt>han</rt> 字 <rt>zi</rt> </ruby>•canvas:绘图标签;•deteils :展开菜单;•datalist:数据列表元素;

<form action="">
  <!--专业:
    <select name="" id="">
        <option value="1">前端与移动开发</option>
        <option value="2">java</option>
        <option value="3">javascript</option>
        <option value="4">c++</option>
    </select>-->
  <!--不仅可以选择,还应该可以输入-->
  <!--建立输入框与datalist的关联  list="datalist的id号"-->
  专业:<input type="text" list="subjects" /> <br />
  <!--通过datalist创建选择列表-->
  <datalist id="subjects">
    <!--创建选项值:value:具体的值 label:提示信息,辅助值-->
    <!--option可以是单标签也可以是双标签-->
    <option value="英语" label="不会" />
    <option value="前端与移动开发" label="前景非常好"></option>
    <option value="java" label="使用人数多"></option>
    <option value="javascript" label="做特效"></option>
    <option value="c" label="不知道"></option>
  </datalist>


  网址:<input type="url" list="urls" />
  <datalist id="urls">
    <!--如果input输入框的type类型是url,那么value值必须添加http://-->
    <option value="http://www.baidu.com" label="百度"></option>
    <option value="http://www.sohu.com"></option>
    <option value="http://www.163.com"></option>
  </datalist>
</form>

References

[1] HTML 音频/视频 - 菜鸟教程: http://www.runoob.com/tags/ref-av-dom.html

简述 HTML 的语义化标签是什么? 这些标签不仅仅用于样式和布局,更重要的是通过标签本身传达出内容的语义和结构,使得页面具有更好的可读性、可访问性和搜索引擎优化。通过使用这些语义化标签,我们可以更清晰地描述页面的结构和内容。HTML 的语义化标签是指用于描述内容结构和含义的标签。 阅读详情

相关推荐

H5语义化标签

使用语义化标签有助于将网页结构化,并使其更易于理解和解释。这对于搜索引擎抓取和索引页面内容、屏幕阅读器用户访问页面以及开发人员维护和修改代码都非常有帮助。

a451319296的博客 918

Html5 什么是语义化标签? 常见的语义化标签有哪些?

h5 语义化标签的推出很好的解决了满屏的 div 布局,语义化顾名思义就是能让人一眼就看出来每一个标签的作用和含义,使用语义恰当的标签,使页面有良好的结构,页面元素有含义,能够让和搜索引擎都容易理解。一张图就可以清晰的展示语义化标签的作用,确实挺好,感觉像搭积木一样,一块一块的把整体搭建出来。 以下是常见的语义化标签及其作用 <header> <!--:页眉通常包括网站标志、主导航、全站链接以及搜索框。--><nav> ...

m0_51273200的博客 1万+

HTML入门-第十五篇:HTML5语义化标签(上)

在HTML5之前,网页结构主要通过<div>标签来划分不同的区域。然而,<div>标签本身没有任何语义,仅仅是一个用于布局的容器。HTML5引入了一系列语义化标签,这些标签具有明确的含义,为网页开发带来了诸多重要的好处。

无 890

移动端web开发

在移动互联网时代,移动端Web开发已成为连接用户与丰富网络内容的关键桥梁。本课程旨在深入讲解移动端Web开发的核心技术、最佳实践及前沿趋势,帮助学员掌握构建高性能、响应式、跨平台移动网页和应用的技能。

Qwen3-Omni-30B-A3B-Instruct微调指南:如何打造专属智能博物官(附数据集)

本文详细介绍了如何对Qwen3-Omni-30B-A3B-Instruct模型进行微调,以打造专业的智能博物官。指南涵盖了从理解模型架构优势、构建高质量文博数据集,到使用LLaMA-Factory进行实战微调、效果评估与部署优化的完整流程,并提供了关键的环境配置与性能优化建议,帮助开发者在垂直领域高效定制专属AI助手。

weixin_29096377的博客 1138

DRAM 埋入式字线(Buried Wordline)技术深度解析:从二维平面到三维凹槽

埋入式字线(bWL)及其核心的埋入式沟道阵列晶体管(BCAT)架构,无疑是 DRAM 发展史上的一次关键性革命。它在约 40nm 技术节点被行业主流采纳,成功地帮助 DRAM 产业克服了传统平面晶体管的物理缩放极限。力挽狂澜的续命技术:bWL 通过引入三维沟道结构,从根本上解决了由短沟道效应和漏电流失控引发的数据保持危机,为经典的 1T1C(单晶体管 - 单电容)DRAM 单元架构延续了超过十年的生命力。协同优化的基石技术。

m0_37606066的博客 3293

从零开始学 Web 之 HTML5(一)HTML5概述,语义化标签

大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:http://www.cnblogs.com/lvonve/ CSDN:https://blog.csdn.net/lvonve/ 在这里我会从 Web 前端零基础开始,一步步学习 Web 相关的知...

weixin_30869099的博客 134

掌控板玩板指南1:初识掌控板、扩展板、Mind+编辑器

掌控板、I/O扩展板入门

好乐无荒之地 1万+

HTML5知识点总结

目录 一、网页概述 1.软件的分类 2.客户端的形式 3.网页 二、HTML总结 1.HTML的注释 2.HTML基本语法 (1).HTML结构及常用标签 (2).标签的属性 (3).文档声明 (4).实体 (5).语义化标签 一、网页概述 1.软件的分类 系统软件(Windows、Linux、macOS)、应用软件、游戏软件 通常情况下,软...

m0_59897687的博客 1067

122、Android Camera HAL3 框架:Request、Result、Metadata 的异步管道模型

本文深入剖析了Android Camera HAL3框架中的异步管道模型,围绕Request、Result和Metadata三个核心要素展开。作者通过实际案例(黑屏闪退问题)切入,揭示了异步模型中常见的帧序错乱陷阱。文章详细阐释了三个角色的交互机制,指出HAL3采用生产者-消费者模式的关键特征:Request与Result一一对应但不保证顺序。针对开发实践,总结了三个必须加锁的场景和回调函数的锁使用禁忌,并给出解决帧序问题的具体方案(独立帧号生成器)。最后提出五项经验性建议,强调异步模型带来的灵活性与复杂性

sundong_81的博客 206

由Sensor光谱响应曲线联想到的白平衡增益计算

由Sensor光谱响应曲线联想到的白平衡增益计算 由于传感器硬件的限制,传感器在某个预定波长范围内的响应不可能是100% 响应。现实中都是类似于正态分布的单峰函数。如果仅做粗略计算,由一个中心波长和半高宽(也成半波宽)完全可以由数学公式计算出一个高斯分布曲线。这个分布曲线就叫波谱响应函数。 波谱响应函数反映了传感器通道获取能量的情况。实际上每个传感器厂商都提供了具体的光谱响应函数,一般由两列数据组成,一列数据是波长,另一列数据是相对响应强度。下图某sensor光谱的响应的波谱响应函数。 ...

大熊 7477

Html5简介,语义化标签,新增结构标签,表单,多媒体

一.HTML5简介 HTML5是一个新的网络标准,现在仍处于发展阶段。目标是取代现有的HTML 4.01和XHTML 1.0 标准。它希望能够减少互联网富应用(RIA)对Flash、Silverlight、JavaFX等的依赖,并且提供更多能有效增强网络应用的API。 二.语义化标签 三.新增结构标签 1.<details> 关于文档的细节: 目前只有 Chrome 和 Safari 6 支持 <details> 标签。 <details> <s

zifeiyu3697的博客 161

Arduino I2C for TCA9548A应答扫描程序

Arduino I2C for TCA9548A应答扫描程序

perseverance51博客 1116

HTML5语义化标签如何正确使用?

本文探讨了HTML5语义化标签在网页开发中的重要性及其正确使用方法。随着互联网技术的发展,HTML5语义化标签如头部标签、主体标签、段落标签和列表标签等,因其明确的含义,显著提升了网页的可读性和可维护性,对用户体验和网站SEO优化都有积极影响。文章强调,开发者在使用这些标签前需充分理解其含义,并根据网页内容和需求选择适当的标签,以最大化其效用。通过正确应用HTML5语义化标签,可以更有效地描述网页内容,增强搜索引擎对网页的理解,同时提升用户的阅读体验。

qq_35974860的博客 131

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

理解HTML语义化

1、什么是HTML语义化?   根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读和写出更优雅的代码的同时让浏览器的爬虫和机器很好地解析。 2、为什么要语义化? 为了在没有CSS的情况下,页面也能呈现出很好地内容结构、代码结构:为了裸奔时好看;用户体验:例如title、alt用于解释名词或解释图片信息、label标签的活用;有利于SEO:和搜索引擎

每天都记录一点点! 1135

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

HTML基础(一)--HTML5新特性和语义化

一、语义化概念 HTML5的语义化指的是合理正确的使用语义化标签来创建页面标签,正确的标签做正确的事,有利于SEO 二、语义化标签 header 、nav、main(文档的主体)、arcticle、section(某个区域)、aside(侧栏)、footer 三、HTML5新特性 HTML5 总的来说比 HTML 4多了十个新特性,但其不支持ie8/ie8以下版本的浏览器 四、新特性标签 音频标签(audio) 视频标签(video) Canvas: 用于图形的绘制,通过脚本来完成 SVG :

qq_44665456的博客 3239

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

HTML 语义化标签、< div>和< span>无语义化、有语义化(手机端)

< div>和< span>标签 < div>和< span>是没有语义的,它们就是一个盒子,用来装内容的。 <div> 这是div </div> <span> 这是span </span> div是division的缩写,表示分割、分区。span 意为跨度、跨距。 特点: < div...

七七的博客 857

HTML5所有标签与简介

这只是HTML5标签的简单汇总,每个标签都有更多的属性和用法,您可以参考HTML5的相关文档来学习和了解更多详情。

weixin_49210907的博客 146

html5的新特性:(主要包括语义化标签和实用性标签)

html5的新特性:(主要包括语义化标签和实用性标签)  header 特指头部; footer 特指底部;  article 代表文档,页面式应用程序中独立的,完整的可以被外部引用的内容; section 对页面上的内容进行分块,对文章分段; aside 定义侧栏标签; mark 用来标记内容; video 视频标签; audio ...

weixin_30604651的博客 195

什么是HTML语义化标签?为什么要用H5语义化标签?HTML5语义化标签有哪些

  对于大部分初学者来说,可能无法理解,明明在学习的时候,用div标签就能构成页面,为什么要用h5语义化标签?可能有一些前端工作者对HTML标签语义化的概念也不是很清楚,那么究竟什么是HTML语义化标签?我们为什么要用h5语义化标签?常用的HTML5语义化标签有哪些呢?下面,我们就带着问题找答案。 什么是HTML语义化标签?   语义化标签,就是让标签有自己的含义,利用本身传达它所包含内容的一些信息,使浏览器和搜索引擎直观的认识标签和属性的用途和作用。   过去我们常常采用DIV+CSS 的方式布局页面,但

panda_2022的博客 5758

HTML5语义化标签

“什么是语义化?”、“说说你对语义化的理解?” 掌握语义化含义、作用以及应当注意的细节,HTML5中常用的语义化新标签!知识点不在于多,而研究透彻应学以致用!

macanfa的博客 4613

html什么是语义化,什么是html语义化,HTML5新增标签有哪些

1.什么是语义化标签?(就是用合理、正确的使用标签来展示内容)那么什么叫做语义化呢,说的通俗点就是:明白每个标签的用途(在什么情况下我可以使用这个标签才合理)比如,网页上的文章的标题就可以用标题标签,网页上的各个栏目的栏目名称也可以使用标题标签。文章中内容的段落就得放在段落标签中,在文章中有想强调的文本,就可以使用em标签表示强调等等。2.为啥使用语义化标签?有利于SEO,搜索引擎根据标签来确定上...

weixin_29442195的博客 813
上一篇: HTML表单元素-其他控件
下一篇: 第7节:CSS概述,选择器,标签分类,CSS三大特性
前端队长
博客等级 码龄13年 840粉丝 345原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值