初学HTML5系列一:简单介绍

时间:2022-10-29 11:23:44

最近很闲,就想着学点东西,然后就瞄中了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系列一:简单介绍的更多相关文章

  1. 初学HTML5系列三:事件

    Window 事件属性 针对 window 对象触发的事件(应用到 <body> 标签): 属性 值 描述 onafterprint script 文档打印之后运行的脚本. onbefor ...

  2. 初学HTML5系列二:HTML5新增的事件属性

    Window事件属性: 属性 值 描述 onafterprint  script 文档打印之后运行的脚本. 属性发生于用户设置页面打印并且打印对话框已出现之后. onbeforeprint  scri ...

  3. HTML5&lt&semi;canvas&gt&semi;标签&colon;简单介绍&lpar;0&rpar;

    <canvas> 标签是 HTML 5 中的新标签,像所有的dom对象一样它有自己本身的属性.方法和事件, 其中就有绘图的方法,js能够调用它来进行绘图 ,最近在研读<html5与c ...

  4. HTML5系列四(特征检测、Modernizr&period;js的相关介绍)

    Modernizr:一个HTML5特征检测库 Modernizr帮助我们检测浏览器是否实现了某个特征,如果实现了那么开发人员就可以充分利用这个特征做一些工作 Modernizr是自动运行的,无须调用诸 ...

  5. Https系列之一:https的简单介绍及SSL证书的生成

    Https系列会在下面几篇文章中分别作介绍: 一:https的简单介绍及SSL证书的生成二:https的SSL证书在服务器端的部署,基于tomcat,spring boot三:让服务器同时支持http ...

  6. Docker系列之原理简单介绍

    目录 1.1.Docker架构简介 1.2.Docker 两个主要部件 1.3.虚拟机和Docker对比: 1.4.Docker内部结构 Docker系列之原理简单介绍 @ Docker是一个开源的应 ...

  7. openresty开发系列10--openresty的简单介绍及安装

    openresty开发系列10--openresty的简单介绍及安装 一.Nginx优点 十几年前,互联网没有这么火,软件外包开发,信息化建设,帮助企业做无纸化办公,收银系统,工厂erp,c/s架构偏 ...

  8. 【FIORI系列】SAP OpenUI5 &lpar;SAPUI5&rpar; js框架简单介绍

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[FIORI系列]SAP OpenUI5 (SA ...

  9. 简单介绍HTML5 Landmark

    最近在进行无障碍相关文档翻译的时候遇到了 landmark 的概念,在网上搜了下发现没有相关的中文资料,因此写一篇博客简单介绍一下. 什么是 Landmark Landmark 是一种用来表示网页组织 ...

随机推荐

  1. POJ 2484 A Funny Game(博弈论)

    题目链接: 传送门 A Funny Game Time Limit: 1000MS     Memory Limit: 10000K Description Alice and Bob decide ...

  2. CSS让div背景透明

    div背景透明样式: 样式代码: .alert{filter:alpha(opacity=100); /* IE */ -moz-opacity:1.0; /* Moz + FF */ opacity ...

  3. cvsnt 设置用户、修改密码

    忘记密码后,可以用administrator 新建一个用户,使用这个用户的账号. password agent 设置clear password不好使..   cvsnt配置 创建用户1 .下载cvs ...

  4. flexpaper 与js 交互

    flash 代码//写到要响应的方法体中import flash.external.ExternalInterface;ExternalInterface.call("alert" ...

  5. 在java项目中使用umeditor

    之前有介绍了ueditor的用法,可看这篇:https://www.cnblogs.com/roy-blog/p/7250668.html umeditor是ueditor的简化版,不仅在功能,容量上 ...

  6. 从git上check out指定的文件夹至本地

    当项目过大时,从服务器上拉取项目是件很头疼的事情,那么就说说怎么只拉区某个或几个文件夹至本地. git clone -n git@172.0.0.10:test/test_platform.git c ...

  7. Asp&period;Net Mvc的几个小问题

    突然想到一些小问题,对写代码影响不大,当是又很实用. MVC 中视图中的model的大小写问题,什么时候用大写,什么时候用小写? 所谓强类型视图,就是通过@model指令指明当前Model(属性)的具 ...

  8. 2&period;搭建cassandra时遇到没有公网网卡的问题

    阿里云服务器有两种网络,一种是经典网络,一种是专用网络,经典网络是公网网卡的,但是专用网络是没有公网网卡的. 如图: 经典网络,公网ip是139.129.31.108: 专用网络,公网ip是 问题: ...

  9. 移动端 解决自适应 和 多种dpr &lpar;device pixel ratio&rpar; 的 &lbrack;淘宝&rsqb; 解决方案 lib-flexible

    其实H5适配的方案有很多种,网上有关于这方面的教程也非常的多. 不管哪种方法,都有其自己的优势和劣势. 为什么推荐使用Flexible库来做H5页面的终端设备适配呢?   原理  简单易懂  源码疑问 ...

  10. mysql ERROR 1045 &lpar;28000&rpar;&colon; Access denied for user 可能解决方法分析

    在实际登录redmine的过程中,我们遇到了如下的error ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using ...