整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

前端开发不得不了解的HTML5标签

TML5 元素有多种维度展示方式,常见以下:

  • 1.按照类别分类
  • 2.按照是否Block元素

按照类别分:

根元素

  • - html 代表 HTML 或 XHTML 文档的根。其他所有元素必须是这个元素的子节点。
  • 文档元数据
  • head 代表关于文档元数据的一个集合,包括脚本或样式表的链接或内容。
  • title 定义文档的标题,将显示在浏览器的标题栏或标签页上。该元素只能包含文本,包含的标签不会被解释。
  • base 定义页面上相对 URL 的基准 URL。
  • link 用于链接外部的 CSS 到该文档。
  • meta 定义其他 HTML 元素无法描述的元数据。
  • style 用于内联 CSS。
  • -
  • 脚本
  • script 定义一个内联脚本或链接到外部脚本。脚本语言是 JavaScript。
  • noscript 定义当浏览器不支持脚本时显示的替代文字。
  • template 这个元素在 HTML5 中加入 通过 JavaScript 在运行时实例化内容的容器。
  • -
  • 章节
  • body 代表 HTML 文档的内容。在文档中只能有一个 元素。
  • section 这个元素在 HTML5 中加入 定义文档中的一个章节。
  • nav 这个元素在 HTML5 中加入 定义只包含导航链接的章节。
  • article 这个元素在 HTML5 中加入 定义可以独立于内容其余部分的完整独立内容块。
  • aside 这个元素在 HTML5 中加入 定义和页面内容关联度较低的内容——如果被删除,剩下的内容仍然很合理。
  • h1~ h6 标题元素实现了六层文档标题,h1 是最大的标题,h6 是最小的标题。标题元素简要地描述章节的主题。
  • header 这个元素在 HTML5 中加入 定义页面或章节的头部。它经常包含 logo、页面标题和导航性的目录
  • footer 这个元素在 HTML5 中加入 定义页面或章节的尾部。它经常包含版权信息、法律信息链接和反馈建议用的地址。
  • address 定义包含联系信息的一个章节。
  • main 这个元素在 HTML5 中加入 定义文档中主要或重要的内容。
  • -
  • 内容组织
  • p 定义一个段落。
  • hr 代表章节、文章或其他长内容中段落之间的分隔符。
  • pre 代表其内容已经预先排版过,格式应当保留 。
  • blockquote 代表引用自其他来源的内容。
  • ol 定义一个有序列表。
  • ul 定义一个无序列表。
  • li 定义列表中的一个列表项。
  • dl 定义一个定义列表(一系列术语和其定义)。
  • dt 代表一个由下一个
  • 定义的术语。
  • dd 代表出现在它之前术语的定义。
  • figure 这个元素在 HTML5 中加入 代表一个和文档有关的图例。
  • figcaption 这个元素在 HTML5 中加入 代表一个图例的说明。
  • div 代表一个通用的容器,没有特殊含义。
  • -
  • 文字展示
  • a 代表一个链接到其他资源的超链接 。
  • em 代表强调 文字。
  • strong 代表特别重要 文字。
  • small 代表注释 ,如免责声明、版权声明等,对理解文档不重要。
  • s 代表不准确或不相关 的内容。
  • cite 代表作品标题 。
  • q 代表内联的引用 。
  • dfn 代表一个术语包含在其最近祖先内容中的定义 。
  • abbr 代表省略 或缩写 ,其完整内容在 title 属性中。
  • data 这个元素在 HTML5 中加入 关联一个内容的机器可读的等价形式 (该元素只在 WHATWG 版本的 HTML 标准中,不在 W3C 版本的 HTML5 标准中)。
  • time 这个元素在 HTML5 中加入 代表日期 和时间 值;机器可读的等价形式通过 datetime 属性指定。
  • code 代表计算机代码 。
  • var 代表代码中的变量 。
  • samp 代表程序或电脑的输出 。
  • kbd 代表用户输入 ,一般从键盘输出,但也可以代表其他输入,如语音输入。
  • sub,- sup 分别代表下标 和上标 。
  • i 代表一段不同性质 的文字,如技术术语、外文短语等。
  • b 代表一段需要被关注 的文字。
  • u 代表一段需要下划线呈现的文本注释,如标记出拼写错误的文字等。
  • mark 这个元素在 HTML5 中加入 代表一段需要被高亮的引用 文字。
  • ruby 这个元素在 HTML5 中加入 代表被ruby 注释 标记的文本,如中文汉字和它的拼音。
  • rt 这个元素在 HTML5 中加入 代表ruby 注释 ,如中文拼音。
  • rp 这个元素在 HTML5 中加入 代表 ruby 注释两边的额外插入文本 ,用于在不支持 ruby 注释显示的浏览器中提供友好的注释显示。
  • bdi 这个元素在 HTML5 中加入 代表需要脱离 父元素文本方向的一段文本。它允许嵌入一段不同或未知文本方向格式的文本。
  • bdo 指定子元素的文本方向 ,显式地覆盖默认的文本方向。
  • span 代表一段没有特殊含义的文本,当其他语义元素都不适合文本时候可以使用该元素。
  • br 代表换行 。
  • wbr 这个元素在 HTML5 中加入 代表建议换行 (Word Break Opportunity) ,当文本太长需要换行时将会在此处添加换行符。
  • -
  • 文字编辑
  • ins 定义增加 到文档的内容。
  • del 定义从文档移除 的内容。
  • -
  • 图片等资源展示
  • img 代表一张图片 。
  • iframe 代表一个内联的框架 。
  • embed 这个元素在 HTML5 中加入 代表一个嵌入 的外部资源,如应用程序或交互内容。
  • object 代表一个外部资源 ,如图片、HTML 子文档、插件等。
  • param 代表 - object 元素所指定的插件的参数 。
  • video 这个元素在 HTML5 中加入 代表一段视频 及其视频文件和字幕,并提供了播放视频的用户界面。
  • audio 这个元素在 HTML5 中加入 代表一段声音 ,或音频流 。
  • source 这个元素在 HTML5 中加入 为 - video 或 - audio 这类媒体元素指定媒体源 。
  • track 这个元素在 HTML5 中加入 为 - video 或 - audio 这类媒体元素指定文本轨道(字幕) 。
  • canvas 这个元素在 HTML5 中加入 代表位图区域 ,可以通过脚本在它上面实时呈现图形,如图表、游戏绘图等。
  • map 与 - area 元素共同定义图像映射 区域。
  • area 与 - map 元素共同定义图像映射 区域。
  • svg 这个元素在 HTML5 中加入 定义一个嵌入式矢量图 。
  • math 这个元素在 HTML5 中加入 定义一段数学公式 。
  • -
  • 表格
  • table 定义多维数据 。
  • caption 代表表格的标题 。
  • colgroup 代表表格中一组单列或多列 。
  • col 代表表格中的列 。
  • tbody 代表表格中一块具体数据 (表格主体)。
  • thead 代表表格中一块列标签 (表头)。
  • tfoot 代表表格中一块列摘要 (表尾)。
  • tr 代表表格中的行 。
  • td 代表表格中的单元格 。
  • th 代表表格中的头部单元格 。
  • -
  • 表单
  • form 代表一个表单 ,由控件组成。
  • fieldset 代表控件组 。
  • legend 代表 - fieldset 控件组的标题 。
  • label 代表表单控件的标题 。
  • input 代表允许用户编辑数据的数据区 (文本框、单选框、复选框等)。
  • button 代表按钮 。
  • select 代表下拉框 。
  • datalist 这个元素在 HTML5 中加入 代表提供给其他控件的一组预定义选项 。
  • optgroup 代表一个选项分组 。
  • option 代表一个 - select 元素或 - datalist 元素中的一个选项
  • textarea 代表多行文本框 。
  • keygen 这个元素在 HTML5 中加入 代表一个密钥对生成器 控件。
  • output 这个元素在 HTML5 中加入 代表计算值 。
  • progress 这个元素在 HTML5 中加入 代表进度条 。
  • meter 这个元素在 HTML5 中加入 代表滑动条 。
  • -
  • 导航等交互元素
  • details 这个元素在 HTML5 中加入 代表一个用户可以(点击)获取额外信息或控件的小部件 。
  • summary 这个元素在 HTML5 中加入 代表 - details 元素的综述 或标题 。
  • menuitem 这个元素在 HTML5 中加入 代表一个用户可以点击的菜单项。
  • menu 这个元素在 HTML5 中加入 代表菜单。

按照是否Block元素分:

  • 1.Empty Elements
  • area 与 map 元素共同定义图像映射 区域。
  • base 定义页面上相对 URL 的基准 URL。
  • basefont 4.0种标签,目前已废弃
  • br 代表换行 。
  • col 代表表格中的列 。
  • frame 4.0种标签,目前已废弃
  • hr 代表章节、文章或其他长内容中段落之间的分隔符。
  • img 代表一张图片 。
  • input 代表允许用户编辑数据的数据区 (文本框、单选框、复选框等)。
  • isindex 4.0种标签,目前已废弃
  • link 用于链接外部的 CSS 到该文档。
  • meta 定义其他 HTML 元素无法描述的元数据。
  • param 代表 object 元素所指定的插件的参数
  • embed 代表一个嵌入 的外部资源,如应用程序或交互内容
  • -
  • 2.Block Elements
  • address 定义包含联系信息的一个章节
  • applet 4.0种标签,目前已废弃
  • blockquote 代表引用自其他来源的内容。
  • button 代表按钮
  • center 4.0种标签,目前已废弃
  • dd 代表出现在它之前术语的定义
  • del 定义从文档移除 的内容。
  • dir 4.0种标签,目前已废弃
  • div 代表一个通用的容器,没有特殊含义
  • dl 定义一个定义列表(一系列术语和其定义)
  • dt 代表一个由下一个 dd 定义的术语
  • fieldset 代表控件组
  • form 代表一个表单 ,由控件组成
  • frameset 4.0种标签,目前已废弃
  • hr 代表章节、文章或其他长内容中段落之间的分隔符
  • iframe 代表一个内联的框架
  • ins 定义增加 到文档的内容
  • isindex 4.0种标签,目前已废弃
  • li 定义列表中的一个列表项
  • map 与 area 元素共同定义图像映射 区域
  • menu 代表菜单
  • noframes
  • noscript 定义当浏览器不支持脚本时显示的替代文字
  • object 代表一个外部资源 ,如图片、HTML 子文档、插件等
  • ol 定义一个有序列表
  • p 定义一个段落
  • pre 代表其内容已经预先排版过,格式应当保留
  • script 定义一个内联脚本或链接到外部脚本。脚本语言是 JavaScript
  • table 定义多维数据
  • tbody 代表表格中一块具体数据 (表格主体)
  • td 代表表格中的单元格
  • tfoot 代表表格中一块列摘要 (表尾)
  • th 代表表格中的头部单元格
  • thead 代表表格中一块列标签 (表头)
  • tr 代表表格中的行
  • ul 定义一个无序列表
  • -
  • 3.Inline Elements
  • a 代表一个链接到其他资源的超链接
  • abbr 代表省略 或缩写 ,其完整内容在 title 属性中
  • acronym 4.0种标签,目前已废弃
  • applet 4.0种标签,目前已废弃
  • b 代表一段需要被关注 的文字
  • basefont 4.0种标签,目前已废弃
  • bdo 指定子元素的文本方向 ,显式地覆盖默认的文本方向
  • big 4.0种标签,目前已废弃
  • br 代表换行
  • button 代表按钮
  • cite 代表作品标题
  • code 代表计算机代码
  • del 定义从文档移除 的内容
  • dfn 代表一个术语包含在其最近祖先内容中的定义
  • em 代表强调 文字
  • font 4.0种标签,目前已废弃
  • i 代表一段不同性质 的文字,如技术术语、外文短语等
  • iframe 代表一个内联的框架
  • img 代表一张图片
  • input 代表允许用户编辑数据的数据区 (文本框、单选框、复选框等)
  • ins 定义增加 到文档的内容
  • kbd 4.0种标签,目前已废弃
  • label 代表表单控件的标题
  • map 与 area 元素共同定义图像映射 区域
  • object 代表一个外部资源 ,如图片、HTML 子文档、插件等
  • q 代表内联的引用
  • s 代表不准确或不相关 的内容
  • samp 代表程序或电脑的输出
  • script 定义一个内联脚本或链接到外部脚本。默认脚本语言是 JavaScript
  • select 代表下拉框
  • small 代表注释 ,如免责声明、版权声明等,对理解文档不重要
  • span 代表一段没有特殊含义的文本,当其他语义元素都不适合文本时候可以使用该元素
  • strike 4.0种标签,目前已废弃
  • strong 代表特别重要 文字
  • sub 代表下标
  • sup 代表上标
  • textarea 代表多行文本框
  • tt 4.0种标签,目前已废弃
  • u 4.0种标签,目前已废弃
  • var 代表代码中的变量
  • -

参考文献:

  • https://developer.mozilla.org/zh-CN/docs/Web/Guide/HTML/HTML5/HTML5_element_list
  • 本文作者:前端首席体验师(CheongHu)
  • 联系邮箱:simple2012hcz@126.com
  • 版权声明: 本文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!

TML DOM INPUT FILE 大文件上传方法,HTML DOM INPUT FILE 大文件上传技术,HTML DOM INPUT FILE 大文件上传技巧,HTML5大文件上传方案,HTML DOM INPUT FILE 大文件上传组件,HTML5大文件上传API,HTML DOM INPUT FILE 大文件上传函数,INPUT FILE 大文件上传教程,DOM INPUT FILE 大文件上传源码,HTML大文件上传代码,HTML大文件上传分片,HTML大文件上传分段,HTML大文件上传分割,HTML大文件上传切割,HTML大文件上传解决方案,

现在chrome提供了相关的API,在HTML5中也能够上传文件,不过有限制,每个域名限制了5个TCP连接。用起来不是那么的舒服,也不够灵活,当然也能够满足一般的使用场景。不太复杂的也能够凑合着用。

但是如果有上传文件夹,文件夹中包含很多文件,比如1万或者10万,这种场景下用起来就不是那么的舒服了,如果单个文件的大小超过10G,比如20G,这种场景下用起来也不是特别的舒服。

还有批量下载的话HTML5的能力也有限,下是能下,但是每下一个文件就需要用户手动确认一下,那比如我要下载100个文件,也需要确认100次,用户不太接受这种方式。

1.下载示例

https://gitee.com/xproer/up6-vue-cli



将up6组件复制到项目中

示例中已经包含此目录



1.引入up6组件



2.配置接口地址

接口地址分别对应:文件初始化,文件数据上传,文件进度,文件上传完毕,文件删除,文件夹初始化,文件夹删除,文件列表

参考:http://www.ncmem.com/doc/view.aspx?id=e1f49f3e1d4742e19135e00bd41fa3de



3.处理事件



启动测试



启动成功



效果



数据库

TML实现文件夹的上传和下载,前端如何用HTML5实现分片上传GB级大文件,网页中实现文件上传下载的三种解决方案(推荐),HTML5实现文件批量上传组件,JQUERY 实现文件夹上传(保留目录结构),B/S大文件上传支持断点上传,WebService 大文件上传,断点续传分片,HTML+AJAX实现上传大文件问题,用HTML实现本地文件的上传,HTML5实现大文件上传,HTML5实现大文件分片上传思路,利用HTML5分片上传超大文件思路,

WEBUPLOADER 支持 超大上G,多附件上传,JS 大文件分割/分片上传,

百度WEBUPLOADER上传视频等大文件,WEBUPLOAD组件实现文件上传功能和下载功能,JS大文件切片上传,断点续传实现DEMO,前端上传大文件的解决方案,前端上传大文件处理(切片、断点续传),前端大文件上传优化方案——分片上传,vue大文件上传解决方案,vue大文件上传解决方案10G,vue大文件上传解决方案50G,vue大文件上传解决方案100G,html5如何实现大文件断点续传、秒传,

java如何实现大文件断点续传、秒传,SpringBoot如何实现大文件断点续传、秒传,SpringMVC如何实现大文件断点续传、秒传,SpringCloud如何实现大文件断点续传、秒传,

webuploader如何实现大文件断点续传、秒传,百度webuploader如何实现大文件断点续传、秒传,html5实现大文件断点续传、秒传,vue如何实现大文件断点续传、秒传,前端如何实现大文件断点续传、秒传,JavaScript如何实现大文件断点续传、秒传,

html5大文件断点续传、秒传解决方案,html5大文件断点续传、加密上传解决方案,html5大文件断点续传、加密存储解决方案,html5大文件断点续传分片解决方案,html5大文件断点续传分块解决方案,html5大文件断点续传分割解决方案,html5大文件断点续传切割解决方案,

后端我们公司项目组选的是JAVA,因为公司有自己的产品,所以直接使用就行了,针对客户需求这块是进行扩展。

客户这边实际上要传的文件单个大小就有50G左右,所以需要支持断点续传和分片上传,并且要支持多线程上传,能够充分利用带宽资源。

之前在网上找过相关的资料,论坛里面也有网友交流过,还加过很多QQ群和微信群,但是结果都不太令人满意。

技术选型的话用的是jquery,也是一个企业内网系统,用的是之前公司的框架,只是进行功能扩展

分片网上讨论的很多,基本上全部都是用的HTML5的API,这个方案也不是不能用,但是在IE下面就不行了,兼容性差了点,并且也不能进行扩展,不能进行二次开发,限制性非常大,我们技术同事提的要求是需要提供产品完整源代码,

网上的文章全部都没有提供文件夹上传和续传的代码,也没有提供数据库操作的代码,

另外这块我们是要求必须提供产品完整源代码,因为后面我们需要自已来维护,同时是要求能够自主可控的

研发部门的同事调研过百度的webuploader这个组件,发现他实际上就是对Flash和HTML5进行了一个封装,本质还是调的HTML5的API,之前在项目中也用过,尝试过,但是最终都不太满意,一个是兼容性非常差,说的是兼容IE,但是在IE用的是Flash,在很多用户的电脑上用不了,卡顿崩溃发生的太频繁,文件上传的数量一多比如几千个,前端页面就开始卡了,用户体验非常差。这些问题研发部的同事都向百度反应过,但是百度webuploader那边一直没人回,基本上没人管,领导说要求付费提供技术支持,那边也是没人回,联系不上他们任何人。

webuploader这边连个开发人员都联系不到,这个是怎么回事?

用户上传的文件比较大,有20G左右,直接用HTML传的话容易失败,服务器也容易出错,需要分片,分块,分割上传。也就是将一个大的文件分成若干个小文件块来上传,另外就是需要实现秒传功能和防重复功能,秒传就是用户如果上传过这个文件,那么直接在数据库中查找记录就行了,不用再上传一次,节省时间,实现的思路是对文件做MD5计算,将MD5值保存到数据库,算法可以用MD5,或者CRC,或者SHA1,这个随便哪个算法都行。

切片的话还有一点就是在服务器上合并,一个文件的所有分片数据上传完后需要在服务器端进行合并操作。

视频教程:https://www.ixigua.com/7227314770696012322

导入项目:
导入到Eclipse:http://www.ncmem.com/doc/view.aspx?id=9da9c7c2b91b40b7b09768eeb282e647
导入到IDEA:http://www.ncmem.com/doc/view.aspx?id=9fee385dfc0742448b56679420f22162
springboot统一配置:http://www.ncmem.com/doc/view.aspx?id=7768eec9284b48e3abe08f032f554ea2

下载示例:

https://gitee.com/xproer/up6-jsp-eclipse/tree/6.5.40/

工程

NOSQL

NOSQL示例不需要任何配置,可以直接访问测试

创建数据表

选择对应的数据表脚本,这里以SQL为例

修改数据库连接信息

访问页面进行测试

文件存储路径

up6/upload/年/月/日/guid/filename

相关问题:
1.javax.servlet.http.HttpServlet错误
2.项目无法发布到tomcat
3.md5计算完毕后卡住
4.服务器找不到config.json文件

相关参考:

文件保存位置

源码工程文档:https://drive.weixin.qq.com/s?k=ACoAYgezAAw1dWofra

源码报价单:https://drive.weixin.qq.com/s?k=ACoAYgezAAwoiul8gl

OEM版报价单:https://drive.weixin.qq.com/s?k=ACoAYgezAAwuzp4W0a

产品源代码:https://drive.weixin.qq.com/s?k=ACoAYgezAAwbdKCskc
授权生成器:https://drive.weixin.qq.com/s?k=ACoAYgezAAwTIcFph1