初学HTML5系列一:简单介绍
最近很闲,就想着学点东西,然后就瞄中了html5,以前只看过很简单的一些,这次是系统的学下,顺便也记录下。废话不多说,开始正题。
稍微介绍下html5,html5是W3C和WHATWG 合作的结果。
html5的规则:
新特性应该基于 HTML、CSS、DOM 以及 JavaScript;减少对外部插件的需求(比如 Flash);更优秀的错误处理;更多取代脚本的标记;HTML5 应该独立于设备;开发进程应对公众透明
html5的新特性:
用于绘画的 canvas 元素;用于媒介回放的 video 和 audio 元素;对本地离线存储的更好的支持;新的特殊内容元素,比如 article、footer、header、nav、section;新的表单控件,比如 calendar、date、time、email、url、search
浏览器支持:最新版本的 Safari、Chrome、Firefox 以及 Opera 支持某些 HTML5 特性。Internet Explorer 9 将支持某些 HTML5 特性。
html5和html4.01存在一些区别,增加了video视频标签,canvas定义图形标签,command标签定义命令按钮等等;html5将不支持html4.01中的某些标签,和某些标签中的一些属性,就不一一列举了,在后续的博客中会提到,自己稍加注意就好。
html5同样也有着优缺点,html5本身是由W3C推荐出来的,它的开发是通过谷歌,苹果,中国移动等几百家公司一起酝酿的技术,这个技术最大的好处就是它是一个公开的技术,另外,W3C通过的标准也就意味着每一个浏览器或每一个平台都会去实现。
html同样支持多设备和多平台,这点造就了它的移植性,同时这点也吸引了大多数人对html5的兴趣。
html5的优点大概总结出6点:
1、提高可用性和改进用户的友好体验;
2、有几个新的标签,这将有助于开发人员定义重要的内容;
3、可以给站点带来更多的多媒体元素(视频和音频);
4、可以很好的替代FLASH和Silverlight;
5、当涉及到网站的抓取和索引的时候,对于SEO很友好;
6、将被大量应用于移动应用程序和游戏。
任何技术都有双面性,那么问题来了,它的缺点:
1、浏览器的编程模型还是90年代流行的单进程单线程(single process single thread),但原生实现(比如用Object C)的APP可以用多线程。移动端编写APP,可以使用多个线程,第一个线程,被称作主线程(main thread),编程的第一原则是don’t do heavy work on main thread。通常只让它处理UI事件等,其他重度的工作让其他背景线程来做。但浏览器只有一个线程,所有的事情都是它干。在台式机上,浏览器编程还没有太多问题,因为够快;但在移动端,这个弊端很明显。
2、它新但并不代表它安全,html5所构建的网页和其他语言编写的网页一样容易泄露一些敏感数据。2013年3月,HTML5编程语言的一个漏洞被发现:它允许网站利用数GB垃圾数据对用户展开轰炸,甚至会在短时间内将硬盘塞满。多款主流浏览器均会受此影响。
以上大概是html5的一些基本介绍,可能写的不全,了解的博友可以补充哈。
另外在补充一点东西:
html5中新增了几个全局属性:
1、contenteditable:规定是否可编辑元素的内容,可设置的值有true(规定可以编辑元素内容),false(规定无法编辑元素内容),classname(继承父元素的 contenteditable 属性)。
2、contextmenu:为元素规定上下文菜单。这个菜单会在用户右键点击元素时出现。该属性的值是需要打开的 <menu> 元素的 id。但是需要注意现在还没有任何一款浏览器支持该属性。
3、draggable:规定元素是否可拖动。可设置true(可拖动),false(不可拖动),auto(使用浏览器的默认属性),注:链接和图像默认是可拖动的。目前只有 Firefox、Chrome 以及 Safari 支持 draggable 属性。
4、dropzone:规定当被拖动的数据在拖放到元素上时,是否被复制、移动或链接。可设置copy(拖动数据会导致被拖数据产生副本),move(拖动数据会导致被拖数据移动到新位置),link(拖动数据会生成指向原始数据的链接)。
5、hidden:规定对元素进行隐藏。语法是hidden="hidden",可以用js来操作该属性,设置元素的可见与不可见。
6、spellcheck:规定是否对元素内容进行拼写检查。可以对文本类型的标签进行拼写检查(类型为 text 的 input 元素中的值(非密码)、textarea 元素中的值、可编辑元素中的值),可设置 true(应当检查),false(不应当检查)。
7、translate:是否应该翻译元素内容。可设置yes(应该翻译),no(不应该翻译)。所有主流浏览器都无法正确地支持 translate 属性。
8、data-*:用于存储页面或应用程序的私有自定义数据。data-* 属性包括两部分:属性名不应该包含任何大写字母,并且在前缀 "data-" 之后必须有至少一个字符;属性值可以是任意字符串。
初学HTML5系列一:简单介绍的更多相关文章
- 初学HTML5系列三:事件
Window 事件属性 针对 window 对象触发的事件(应用到 <body> 标签): 属性 值 描述 onafterprint script 文档打印之后运行的脚本. onbefor ...
- 初学HTML5系列二:HTML5新增的事件属性
Window事件属性: 属性 值 描述 onafterprint script 文档打印之后运行的脚本. 属性发生于用户设置页面打印并且打印对话框已出现之后. onbeforeprint scri ...
- HTML5<canvas>标签:简单介绍(0)
<canvas> 标签是 HTML 5 中的新标签,像所有的dom对象一样它有自己本身的属性.方法和事件, 其中就有绘图的方法,js能够调用它来进行绘图 ,最近在研读<html5与c ...
- HTML5系列四(特征检测、Modernizr.js的相关介绍)
Modernizr:一个HTML5特征检测库 Modernizr帮助我们检测浏览器是否实现了某个特征,如果实现了那么开发人员就可以充分利用这个特征做一些工作 Modernizr是自动运行的,无须调用诸 ...
- Https系列之一:https的简单介绍及SSL证书的生成
Https系列会在下面几篇文章中分别作介绍: 一:https的简单介绍及SSL证书的生成二:https的SSL证书在服务器端的部署,基于tomcat,spring boot三:让服务器同时支持http ...
- Docker系列之原理简单介绍
目录 1.1.Docker架构简介 1.2.Docker 两个主要部件 1.3.虚拟机和Docker对比: 1.4.Docker内部结构 Docker系列之原理简单介绍 @ Docker是一个开源的应 ...
- openresty开发系列10--openresty的简单介绍及安装
openresty开发系列10--openresty的简单介绍及安装 一.Nginx优点 十几年前,互联网没有这么火,软件外包开发,信息化建设,帮助企业做无纸化办公,收银系统,工厂erp,c/s架构偏 ...
- 【FIORI系列】SAP OpenUI5 (SAPUI5) js框架简单介绍
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[FIORI系列]SAP OpenUI5 (SA ...
- 简单介绍HTML5 Landmark
最近在进行无障碍相关文档翻译的时候遇到了 landmark 的概念,在网上搜了下发现没有相关的中文资料,因此写一篇博客简单介绍一下. 什么是 Landmark Landmark 是一种用来表示网页组织 ...
随机推荐
- POJ_2914_Minimum_Cut_(Stoer_Wagner)
描述 http://poj.org/problem?id=2914 求无向图中最小割. Minimum Cut Time Limit: 10000MS Memory Limit: 65536K T ...
- 大型邮箱smtp服务器及端口 收集
各大型邮箱smtp服务器及端口收集: 新浪邮箱smtp服务器 外发服务器:smtp.vip.sina.com 收件服务器:pop3.vip.sina.com 新浪免费邮件 外发服务器:smtp.sin ...
- 查看SQL语句执行时间
DBCC FREEPROCCACHE;SET STATISTICS PROFILE ON SET STATISTICS IO ON SET STATISTICS TIME ON go--SQL开始** ...
- HDOJ/HDU 1804 Deli Deli(英语单词复数形式~)
Problem Description Mrs. Deli is running the delicatessen store "Deli Deli". Last year Mrs ...
- 1002: Prime Path
题目链接:http://172.16.200.33/JudgeOnline/problem.php?id=1002 题意:给你两个四位数的素数,求最少经过多少步的变化能够从一个素数变到另一个素数.在变 ...
- bzoj 2761 [JLOI2011]不重复数字(哈希表)
2761: [JLOI2011]不重复数字 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 3210 Solved: 1186[Submit][Sta ...
- 洛谷1377 M国王 (SCOI2005互不侵犯King)
洛谷1377 M国王 (SCOI2005互不侵犯King) 本题地址:http://www.luogu.org/problem/show?pid=1377 题目描述 天天都是n皇后,多么无聊啊.我们来 ...
- 高级IO复用应用:聊天室程序
简单的聊天室程序:客户端从标准输入输入数据后发送给服务端,服务端将用户发送来的数据转发给其它用户.这里采用IO复用poll技术.客户端采用了splice零拷贝.服务端采用了空间换时间(分配超大的用户数 ...
- 在Jersey中如何处理泛型集合
Jersey是一个标准的Restful Web service框架,可以方便的实现Restful的Server端和客户端. 本文主要介绍使用Jersey客户端时如何将Json格式的数组转换成java的 ...
- 【OpenCV】基于kmeans的细胞检测方法
问题是这样的,有一幅经过二值化处理之后的图像,我们希望统计其中细胞的个数,和不同粘连情况的细胞个数,比如,下图中有1个细胞组成连通区域的,也有2个细胞组成连通区域的,也有更多个细胞组成连通区域的,我们 ...