html5 01
(1)Html 5的概念 能做什么? 为什么学习?
HTML5并不仅仅只是做为HTML标记语言的一个最新版本,更重要的是它制定了Web应用开发的一系列标准,成为第一个将Web做为应用开发平台的HTML语言。
HTML5定义了一系列新元素,如新语义标签、智能表单、多媒体标签等,可以帮助开发者创建富互联网应用,同时有令人眼花缭乱的css 3,还提供了一些Javascript API,如地理定位、重力感应、硬件访问等,可以在浏览器内实现类原生应用,制作webApp,甚至结合Canvas我们可开发网页版游戏。
我们日常讨论的H5其实指的是一个泛称,它是由HTML5 + CSS3 + Javascript等技术组合而成的一个应用开发平台。
(2)Html5的兼容性(浏览器之间的兼容)
兼容性: 新增的部分有兼容性问题(绝大部分)
并不是所有的html5都是IE9就兼容的,有一些属性是需要IE10,等更高级的浏览器才能兼容,而html5更多运用在移动端方面,因为移动端搭载的浏览器比较高级
(4)html5的骨架
(4.1)Html的发展历程
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
</body>
</html>
说明: html5骨架是没有兼容性问题
反问:如果在xt的文档DTD里面书写h5的内容,会带来兼容问题么?
答:跟你用什么文档DTD没有关系 主要跟浏览器有关系
(5)html5新增的标签
新增的6大结构标签:
(1)header (2)nav (3)section (4)aside (5)article (6)footer
作用:跟div一模一样 ,就是增加了语义性 更加利于seo优化
问:语义性有什么作用?为什么说它利于seo优化?有没有相关seo优化的概念?
答:利于SEO优化,提升网站在搜索引擎中的排名
在前端方面,更多的去运用语义化的标签,同时针对一些特殊的字符,我们运用权重高的标签去包裹 如 h1去包裹网站logo
由于html5新增的标签有兼容问题,所以我们需要做兼容!怎么实现?
(1)利用document.creatElement()去创建html5的新标签,同时设置成块元素(相对麻烦)
<!--[if lt IE 9]>
<script type="text/javascript">
var e ="abbr, article, aside, audio, canvas, datalist, details, dialog, eventsource, figure, footer, header, hgroup, mark, menu, meter, nav, output, progress, section, time, video".split(', ');
var i= e.length;
while(i--){
document.createElement(e[i])
- }
</script>
<![endif]-->
(2)借助于第三方的JS框架 =>html5shiv.min.js (推荐)配合IE的hack实现最佳兼容
<!--[if lt IE 9]>
<script src="js/html5shiv.min.js"></script>
<![endif]-->
注明:还有一些新增的用到的不多,所以了解即可,上述六个是最为常用的
(6)html5新增的智能表单
以前学过 type =text ,submit ,reset,radio。。。。
Input表单的type新属性值 |
|
type="email" |
限制用户输入必须为Email类型 |
type="url" |
限制用户输入必须为URL类型 |
type="date" |
自动生成一个日期控件 |
type="time" |
同上 |
type="month" |
同上 |
type="week" |
同上 |
type="number" |
限制用户输入必须为数字类型 |
type="range" |
产生一个滑动条的表单 |
type="search" |
产生一个搜索意义的表单 |
type="color" |
生成一个颜色选择表单 |
总结:智能表单的兼容比较大,在移动端用的较多,移动端会自动调取手机本身的控件(不同手机之间会略有不同,但如果需要高度自定义,就需要用JS去写了)
(7)智能验证表单
(1)required => 验证表单是否为空,必须配合form表单来使用
(2)pattern => 自定义验证表单规则,匹配正则
(3)invalid => 验证失败的时候触发的事件
(4)dom.setCustomValidity() => 自定义弹出的内容 参数:string 自定义的内容
(8)表单的新属性
(1)placeholder => 占位文本,体验更加
(2)autofocus => 自动获取焦点 dom.focus()
(3)autocomplete => 提交一次后下次自动补全 注意:必须提交一次之后,同时必须要有name属性
(4)multiple => 配合file控件实现多选
(5)form => 配合form表单的id值实现关联,在任意位置都可以被提交,但是不建议这么写
(9)智能感应
利用表单的list =“datalist的id值”与datalist这个标签取得联系实现的
(10)html5调用视频
直到现在,我们的视频依旧采用第三方的网站播放视频,并且需要借助于flash技术
在html5中,我们只需要借助于video这个标签来实现视频的播放
标签:video
标签属性:
(1)autoplay =>视频默认加载完播放
(2)controls =>播放的控件
(3)loop =>控制循环
(4)poster =>在视频没有播放的时候的预览图片
我们发现每一个浏览器支持的格式都不一样,所以我们需要利用source标签实现兼容(MP4格式已经全被兼容)
视频的API:(注:是JS的,JQ去使用需要转化对象)
(1)play()//控制视频播放
(2)pause()//控制视频暂停
(3)load()//重新加载视频或者音频
音频:audio的用法与视频一模一样
(11)JS获取元素的新方式
(1)document.querySelector('selector') 通过类似CSS选择器获取元素,符合匹配条件的第1个元素。可以传入复合选择器(如:.box li, .box > li input[type=’button’])等
(2)document.querySelectorAll('selector') 通过CSS选择器获取元素,以类数组形式存在。可以传入复合选择器(如:.box li, .box > li input[type=’button’])等
(12)JS类名操作
(1)Node.classList.add('class') 添加class
(2)Node.classList.remove('class') 移除class
(3)Node.classList.toggle('class') 切换class,有则移除,无则添加
(4)Node.classList.contains('class') 检测是否存在class
Node指一个有效的DOM节点,是一个通称。
(13)自定义属性
在HTML5中我们可以自定义属性,其格式如下data-*="",例如
data-info="我是自定义属性",通过Node.dataset['info'] 我们便可以获取到自定义的属性值。
Node.dataset是以对象形式存在的
当我们如下格式设置时,则需要以驼峰格式才能正确获取
data-my-name="itcast",获取Node.dataset['myName']
在JQ中,可以通过data方法去获取标签的data属性的值
(14)自定义进度条
(1)Progress
(2)Meter => 有颜色的切换
总结:两种标签运用的不多,因为不能深度自定义,实际开发中,多是自己用div模拟
html5 01的更多相关文章
- HTML5 01. 布局、语义化标签、智能化表单、表单元素/标签/属性/事件、多媒体、类操作、自定义属性
1.知识点 lang = “en” 所用语言是英文 文档结构更简洁 IE8一下不支持h5c3 书写更宽松 div没有语义 标签语义化:在合适的地方使用合适的标签 对seo优化友谊 网页经典布局 页 ...
- html5 01 随记
一 HTML 是一种制作网站的标记语言 二.HTML基本语法 HTML 标签 html标签是html中的最基本单位 也是最重要的部分 通常使用尖角号 开始"<"和结束&qu ...
- 【01】《html5权威指南》(扫描版)(全)
[01]<html5权威指南>(扫描版)(全) []魔芋:无高清电子书. 只看第五部分,高级功能. 作者:(美)弗里曼 著,谢延晟,牛化成,刘美英 译 [美]adam freeman ...
- 01.html5+phonegap跨平台移动应用开发
一.html5+PhoneGap基础知识 (1)html5介绍 HTML5是用于取代1999年所制定的 HTML 4.01 和 XHTML 1.0 标准的 HTML 标准版本,现在仍处于发展阶段,但大 ...
- 【01】《响应式Web设计:HTML5和CSS3实战》
[01] (魔芋:已看完.) [01]<响应式Web设计:HTML5和CSS3实战>(全).pdf 共246页. 2013年1月出版. 读后感:适合入门的书籍,对于响应式布局, ...
- HTML5/HTML 4.01/XHTML
HTML5/HTML 4.01/XHTML 元素和有效的 DTD 下面的表格列出了所有的 HTML5/HTML 4.01/XHTML 元素,以及它们会出现在什么文档类型 (DTD) 中: 标签 HTM ...
- HTML5/HTML 4.01/XHTML 元素和有效的 DTD
HTML5/HTML 4.01/XHTML 元素和有效的 DTD 下面的表格列出了所有的 HTML5/HTML 4.01/XHTML 元素,以及它们会出现在什么文档类型 (DTD) 中: 标签 HTM ...
- 01.Web大前端时代之:HTML5+CSS3入门系列~初识HTML5
Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 文档申明 <!--文档类型申明,html代表是ht ...
- HTML5学习总结-01 开发环境和历史
1 搭建HTML5开发环境 1 安装一款支持HTML5的浏览器 FireFox, Chrome 2 开发工具 SublineText, Eclipse, HBuilder, WebStorm 注:使用 ...
随机推荐
- du 使用详解 linux查看目录大小 linux统计目录大小并排序 查看目录下所有一级子目录文件夹大小 du -h --max-depth=1 |grep [
常用命令 du -h --max-depth=1 |grep [TG] |sort #查找上G和T的目录并排序 du -sh #统计当前目录的大小,以直观方式展现 du -h --max-d ...
- dispatch_set_target_queue 说明
参照:http://blog.csdn.net/growinggiant/article/details/41077221 http://codingobjc.com/blog/2013/05/07/ ...
- 转 listener.log文件过大导致oracle数据库连接非常慢
数据库(31) 最近发现oracle数据库连接非常慢,sqlplus很快,用客户端就很慢,甚至会无响应. 然后服务器内存一下就飙升到了90%,不是表空间占满了,也不是数据库连接数占满了.重启还是一样 ...
- Windows服务定时执行方式
采用System.Timers.Timer 间隔固定时间执行 方式一:间隔固定的时间执行一次,关键代码: protected override void OnStart(string[] args) ...
- JAVA下载文件中文乱码问题
http://blog.itpub.net/92037/viewspace-788900/ 最后的中文乱码没有解决 现在我在系统中用到了两个组件,smartupload,一个支持中文,一个不支持.但是 ...
- 常用PHP函数类目录
说明:用来记录我在开发过程中,经常用到的一些常用函数或者常用类. 常用函数 PHP常用函数 (1) 常用类 PHP表单数据校验类
- 阿里云CentOS6上配置iptables
参考:http://blog.abv.cn/?p=50 阿里云CentOS6默认没有启动iptables 1.检查iptables状态 [root@iZ94jj63a3sZ ~]# service i ...
- 黑马程序员_ Objective-c 之Foundation笔记(二)
NSArray NSArray的创建 NSArray *array = [NSArray arrayWithObject:@“jack”] 创建单个元素 NSArray *array3 = [NS ...
- 集成IC刷卡器经验
因为一系列的原因,IC刷卡器要渐渐地取代磁条刷卡器.公司在这方面也是需要跟进的,在我负责集成IC刷卡器到应用程序的过程中,积累了些经验,现在分享下. 第一:无论是磁条还是IC刷卡器都是刷卡器的一种,所 ...
- Webpack 入门指南 - 2.模块
这一次我们谈谈模块问题. 通常我们希望这个项目可以分为多个独立的模块,比如,上一次提高的 hello 函数,如果我们定义为一个模块,其它模块引用之后,直接调用就好了.在前端怎么使用模块呢?这可说来话长 ...