最近大家有没有发现,很多微信公众号的动态内容变多了?我们常常可以看到,公众号内容中有很多动态图片甚至动画,还可以通过手指滑动切换页面,或者有一些小的点击互动。

这种看起来有点高级的小作品,其实是都是“互动形式的多媒体广告页面”,它是 H5 的移动端网页。

什么是 H5

H5 其实是缩写,我们一般所说的 H5,其实是指 HTML5,即第五代超文本标记语言。而超文本标记语言 HTML,是一种标记语言。它包括一系列标签,通过这些标签可以将网络上的文档格式统一,使分散的 Internet 资源连接为一个逻辑整体。需要注意的是 HTML 不是一种编程语言,因此 HTML 的上手极为方便。那为什么 HTML 直到第 5 代才这么热门的出现?

因为以前网页主要在电脑中访问,而如今访问网页的设备逐渐从电脑端转移到了移动设备。可是原本的网页如果用手机查看是很难看清楚内容的,这才推动了 HTML5 的出现。

而 HTML5 也不负众望,带着一些全新特性几乎完美的达成了适配多种设备的需求。

HTML5 的特性

语义化标签

语义是指对一个词或者句子含义的正确解释,HTML 语义化让我们仅通过 HTML 元素就能看出页面的大致结构。HTML5 新增的语义化元素,让我们能够通过标签名判断标签内容。这些元素分别是:

  • 标签通常放在页面或页面某个区域的顶部,用来设置页眉;
  • 标签中的内容比较独立,可以是一篇新闻报道,一篇博客,它可以独立于页面的其他内容进行阅读;
  • 标签表示页面中的一个区域,通常对页面进行分块或对内容进行分段,
    标签和
    标签可以互相嵌套;
  • 标签位于页面或页面某个区域的底部,用来设置页脚,通常包含版权信息,联系方式等。

增强型表单

之前的 HTML 版本的功能,比如日期、颜色、文本框等,是需要单独的控件进行支持的,而到了 HTML5,这些常用功能直接进入了表单标签中,比如你可以直接通过 控制颜色。

除此外, HTML 还增加了新的表单属性:

  • placeholder 提供对输入域的提示值

  • required 规定表单提交前输入域是否必填

  • pattern 规定用于验证 input 域的正则表达式

  • min 规定输入域允许的最小值

  • max 规定输入域允许的最大值

  • multiple 输入域可以选择多个值,适用于 email 和 file 类型

DOM 扩展

HTML5 为 DOM 作了一些专门扩展,包括 classList 属性、焦点管理、HTMLDocument 变化、字符集属性、插入标记、getElementByClassName() 方法等。这其中 getElementByClassName() 方法是最受欢迎的,它可以让添加事件处理程序不再局限于使用 ID 或标签名 (getElementsByTagName)。

媒体元素

HTML5 新增了两个与媒体相关的标签 和 ,它们让开发人员不再需要依赖插件就能在网页中嵌入跨浏览器的音频和视频内容。 和 还包含了 autuplay、controls、src 等新属性,让开发人员在只需要少量 HTML 和 JavaScript 的就能编写出自定义音视频播放器。

Web Storage

Web Storage 有两个主要目标:

  • 提供一种在 cookie 之外存储会话数据的途径

  • 提供一种存储大量可以跨会话存在的数据的机制

常用的两个对象分别是:

  • localStorage:对象存储某个特定会话的数据,该数据只保持到浏览器关闭。

  • sessionStorage:目的是跨越会话存储对象,但有特定的访问限制,限制因浏览器而异。

WebSockets

HTML5 支持了 WebSockets。WebSockets 可以让双工、双向通信能在一个单独连接上持久存在,WebSocket 协议更好的节省了服务器资源和带宽,并且能够更实时地进行通讯。但是这个需要支持这种协议的专门服务器,当然我们也可以选择使用云服务来解决。详细可以查看《聊聊 WebSocket,还有 HTTP》

HTML5 的优劣

任何特性如果单独看可能并不能直白的体会到它的优势,那我们就来直白地看一下这些特性让 HTML5 相较之前的版本增加了多少优势:

  • 提高了用户体验并且提高了可用性:这些特性让站点能够加入更多多媒体元素,音视频的使用更为广泛。同时它替代了 FLASH 和 Silverlight

  • 对网站而言:对 SEO 的抓取和索引都更为友好了,让用户能够更容易的查找到网站。

  • 提高了移植性:这让大量应用程序和游戏不再局限于 PC 端,而是能使用手机访问。

  • 节省开发成本:充分提现了“响应式设计”的概念,只要使用一套代码就可以适配任何设备、任何系统、任何分辨率。

不过作为一个全新的版本,HTML5 有着新东西都有的痛点。最标志的就是不能被所有的浏览器支持,比如 IE,当前 IE9 以下的浏览器都不兼容 HTML5。

但是在移动端设备越来越普及,功能也越来越强大的当下。HTML5 占领全部市场只是时间问题,你看微信公众号内容都开始出现 HTML5 了不是么?

推荐阅读

网络安全(一):常见的网络威胁及防范

进击的 Ansible(二):如何快速搞定生产环境 Ansible 项目布局?

【白话科普】10s 从零看懂 H5的更多相关文章

  1. 【白话科普】《逆局》最终 boss 隐藏自己的方式是?

    二狗子最近在看一个很火的电视剧<逆局>.作为一部悬疑犯罪剧,剧中多个案件交织并进,悬念和转折拉满,让狗子看的直呼过瘾.特别最后一幕,杨副座和主角团同时对 U 盘中的关键证据"器官 ...

  2. 从零开始一起学习SLAM | 理解图优化,一步步带你看懂g2o代码

    首发于公众号:计算机视觉life 旗下知识星球「从零开始学习SLAM」 这可能是最清晰讲解g2o代码框架的文章 理解图优化,一步步带你看懂g2o框架 小白:师兄师兄,最近我在看SLAM的优化算法,有种 ...

  3. Vue + element从零打造一个H5页面可视化编辑器——pl-drag-template

    pl-drag-template Github地址:https://github.com/livelyPeng/pl-drag-template 前言 想必你一定使用过易企秀或百度H5等微场景生成工具 ...

  4. 一文看懂:网址,URL,域名,IP地址,DNS,域名解析

    一个执着于技术的公众号 前言 今天给大家梳理一篇关于网址.URL.IP地址.域名.DNS.域名解析的白话长文,并以简单的提问-解答 形式让读者更加深刻理解,希望有助于读者的学习,面试和工作! 1.一个 ...

  5. 《架构探险——从零开始写Java Web框架》这书不错,能看懂的入门书

    这书适合我. 哈哈,结合 以前的知识点,勉强能看懂. 讲得细,还可以参照着弄出来. 希望能坚持 完成啦... 原来,JSTL就类似于DJANGO中的模板. 而servlet类中的res,req,玩了D ...

  6. 追源索骥:透过源码看懂Flink核心框架的执行流程

    li,ol.inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt, ...

  7. 小学生都能看懂的数位dp

    前言 数位dp其实很久前就知道了,也做过几道和其他算法混在一起的题目,其实通过手玩是能做的 但毕竟是种算法,还是系统学下比较好(节省手玩时间) 模板题 P2602 [ZJOI2010]数字计数 化简题 ...

  8. emmm 深入浅出教你看懂现代金融游戏

    3303只信仰公平[网易陕西省西安网友]1 比特币是骗人的.你们都被“现代帼家纸币”概念茜脑了,而且茜的很彻底,所以你们看不透比特币的骗局.简单来说,现代纸币是“空气纸”,比特币是“空气币(空气数据) ...

  9. 闯缸鱼:看懂python如何实现整数加和,再决定是否自学编程

    玩鱼缸的新手都知道有一种鱼叫"闯缸鱼",皮实好养,帮助新手判断鱼缸环境是否准备好.这篇笔记,最初用来解答一个编程新手的疑问,后来我发现,整理一下也可当做有兴趣自学python 编程 ...

随机推荐

  1. redis入门到精通系列(八):redis的高可用--主从复制详解

    (一)主从复制介绍 前面所讲的关于redis的操作都属于单机操作,单机操作虽然操作简单,但是处理能力有限,无法高可用.所谓高可用性,就是指当一台服务器宕机的时候,有备用的服务器能顶替上,在单机操作上这 ...

  2. 利用ajax,js以及正则表达式来验证表单递交

    <!DOCTYPE html><html lang="en"> <head> <meta charset="utf-8" ...

  3. Spring Boot项目的不同启动方式

    方式一: 直接通过IntelliJ IDEA启动,直接执行Spring Boot项目的main()方法. 方法二: 将项目打包成jar包,首先需要在pom.xml文件的根节点下添加如下配置: < ...

  4. 1、Linux下安装JDK

    1.Linux下安装JDK 1 权限设置(可忽略) 1.1 安装过程与Windows安装过程相差不多,下载解压安装 1.切换root用户( 如果当前登录的用户权限够的话,请忽略这步) 由于创建目录的位 ...

  5. Jenkins配置代码化

    目录 一.简介 二.init.groovy 脚本命令行调试 一.简介 Jenkins用久了,会有一种莫名的紧张感.因为没人清楚Jenkins都配置了什么,以至于没人敢动它. 但凡使用界面进行配置的都会 ...

  6. 20个ios登陆界面

    原文:http://favbulous.com/post/1001/24-unique-ios-login-screen-showcase Eeve Evernote Food Recood Hips ...

  7. 自定义函数(Power Query 之 M 语言)

    数据源: 任意工作簿 目标: 使用自定义函数实现将数据源导入Power Query编辑器 操作过程: PowerQuery编辑器>主页>新建源>其他源>空查询 编辑栏内写入公式 ...

  8. CF1199B Water Lily 题解

    Content 有一朵长在水中的莲花,其茎秆部分露出水面的高度为 \(h\).有人将它往右边拽了 \(l\) 米,使得整个茎秆部分都浸在水中.求池水的深度. 数据范围:\(1\leqslant h&l ...

  9. LuoguP7369 [COCI2018-2019#4] Elder 题解

    Content 有一个魔杖最初在 \(Z\) 巫师中.经过 \(n\) 轮较量,第 \(i\) 轮中,\(Z_{i,1}\) 巫师打败了 \(Z_{i,2}\) 巫师.如果一个巫师打败了拥有魔杖的巫师 ...

  10. windows安装openoffice4

    官网:https://www.openoffice.org/download/index.html 下载完成后 直接点击安装即可