小白该知道的HTML5基础知识

Posted web前端网页设计

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小白该知道的HTML5基础知识相关的知识,希望对你有一定的参考价值。

现在做前端,如果说自己不会h5,你很有可能被你的客户嘲笑,说什么最新技术都不会!h5其实没什么,只不过是html技术的进一步发展,主要是增加了一些新的元素而已。

HTML5 <!DOCTYPE>

<!doctype> 声明必须位于 HTML5 文档中的第一行,使用非常简单,写法:<!DOCTYPE html>

新特性

HTML5 中的一些有趣的新特性:

用于绘画的 canvas 元素

用于媒介回放的 video 和 audio 元素

对本地离线存储的更好的支持

新的特殊内容元素,比如 article、footer、header、nav、section

新的表单控件,比如 calendar、date、time、email、url、search

HTML5 添加了很多语义元素如下所示:

标签 描述
<article> 定义页面独立的内容区域。
<aside> 定义页面的侧边栏内容。
<bdi> 允许您设置一段文本,使其脱离其父元素的文本方向设置。
<command> 定义命令按钮,比如单选按钮、复选框或按钮
<details> 用于描述文档或文档某个部分的细节
<dialog> 定义对话框,比如提示框
<summary> 标签包含 details 元素的标题
<figure> 规定独立的流内容(图像、图表、照片、代码等等)。
<figcaption> 定义 <figure> 元素的标题
<footer> 定义 section 或 document 的页脚。
<header> 定义了文档的头部区域
<mark> 定义带有记号的文本。
<meter> 定义度量衡。仅用于已知最大和最小值的度量。
<nav> 定义导航链接的部分。
<progress> 定义任何类型的任务的进度。
<ruby> 定义 ruby 注释(中文注音或字符)。
<rt> 定义字符(中文注音或字符)的解释或发音。
<rp> 在 ruby 注释中使用,定义不支持 ruby 元素的浏览器所显示的内容。
<section> 定义文档中的节(section、区段)。
<time> 定义日期或时间。
<wbr> 规定在文本中的何处适合添加换行符。

HTML5 表单

新表单元素, 新属性,新输入类型,自动验证。

已移除元素

以下的 HTML 4.01 元素在HTML5中已经被删除:

<acronym> 标记一个首字母缩写,h5用abbr代替

<applet> 用object代替

<basefont>规定页面上的默认字体颜色和字号:

<big>呈现大号字体效果。

<center> 这个...这么常用为什么去掉??

<dir> 签定义目录列表。类似于ul

<font> //这个也是比较常用的,但是取消了

<frame> 标签定义 frameset 中的一个特定的窗口(框架)

<frameset>定义一个框架集

<noframes> 元素可为那些不支持框架的浏览器显示文本。noframes 元素位于 frameset 元素内部。

<strike>标签可定义加删除线文本定义。

HTML5 浏览器支持

最新版本的 Safari、Chrome、Firefox 以及 Opera 支持某些 HTML5 特性。Internet Explorer 9 将支持某些 HTML5 特性。

IE9 以下版本浏览器兼容HTML5的方法,使用的静态资源的html5shiv包:(菜鸟教程)

<!--[if lt IE9]> <script ></script> <![endif]-->

载入后,初始化新标签的CSS:

/*html5*/article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}

HTML 5 视频

写法:<video controls="controls" width="320" height="240">文字</video>

control 属性供添加播放、暂停和音量控件。

<video> 与 </video> 之间插入的内容是供不支持 video 元素的浏览器显示的:

注意:要确保适用于 Safari 浏览器,视频文件必须是 MPEG4 类型。所以video 元素允许多个 source 元素

所以写成:

<video width="320" height="240" controls="controls">

<source type="video/ogg">

<source type="video/mp4">

Your browser does not support the video tag.

</video>

<video> 标签的属性

autoplay:值为:autoplay,如果出现该属性,则视频在就绪后马上播放。

controls:值为:controls如果出现该属性,则向用户显示控件,比如播放按钮。height:pixels设置视频播放器的高度。

loop:值为:loop,如果出现该属性,则当媒介文件完成播放后再次开始播放。

preload:值为:preload,如果出现该属性,则视频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。

src:值为:url,要播放的视频的 URL。

width:值为:pixels,设置视频播放器的宽度。

同时还可以支持dom事件支持:play(),pause(),load(),canPlayType();

HTML 5 音频

写法:<audio controls="controls">Your browser does not support the audio tag.</audio>

control 属性供添加播放、暂停和音量控件。

<audio> 与 </audio> 之间插入的内容是供不支持 audio 元素的浏览器显示

当前,audio 元素支持三种音频格式:mp3,mav和ogg,Safari 浏览器,音频文件必须是 MP3 或 Wav 类型。多个 source 元素支持。

<audio> 标签的属性

属性 描述
autoplay autoplay 如果出现该属性,则音频在就绪后马上播放。
controls controls 如果出现该属性,则向用户显示控件,比如播放按钮。
loop loop 如果出现该属性,则每当音频结束时重新开始播放。
preload preload 如果出现该属性,则音频在页面加载时进行加载,并预备播放。如果使用 "autoplay",则忽略该属性。
src url 要播放的音频的 URL。

HTML 5 拖放

拖放(Drag 和 drop)是 HTML5 标准的组成部分。

draggable="true" 设置元素为可拖放 <img draggable="true" />

ondragstart 和 setData()规定当元素被拖动时,会发生什么

ondragoverondragover 事件规定在何处放置被拖动的数据。

Ondrop:当放置被拖数据时,会发生 drop 事件。

(说实话真心不好理解,看一下w3c给的案例吧:)

<script type="text/javascript">

function allowDrop(ev)

{ev.preventDefault();}

function drag(ev)

{ev.dataTransfer.setData("Text",ev.target.id);//方法设置被拖数据的数据类型和值:

}

function drop(ev)

{

ev.preventDefault();//阻止对元素的默认处理方式,默认不接受拖拽元素的

var data=ev.dataTransfer.getData("Text");//获得被拖的数据

ev.target.appendChild(document.getElementById(data));//放置进去

}

</script>

<div id="div1" ondrop="drop(event)"ondragover="allowDrop(event)"></div>

<img id="drag1" draggable="true"ondragstart="drag(event)" width="336" height="69" />

这个拖拽看起来比较费劲,一般我们也用不到,大家可以先收藏起来,如果需要用到的时候,再返回来直接套用案例!


以上是关于小白该知道的HTML5基础知识的主要内容,如果未能解决你的问题,请参考以下文章

HTML5如何学?HTML5该学什么?

“焕彩”《零基础学HTML5+CSS3》附加配套资料哦

大数据为什么这么火?小白该如何去学习大数据

大数据为什么这么火?小白该如何去学习大数据

完全零基础小白该如何学爬虫?大牛总结最适合零基础的爬虫教程!

关于HTML5新手应该知道的几点知识