小知识:
Webstorm的使用
-
WebStorm 11.0.3.zip 解压
-
在bin目录下有 webstorm.exe 和 webstorm64.exe 两个运行文件,选取一个点击运行, 然后百度查找 webstorm 的激活码激活。
-
安装好后,统一规定在除C盘以外的盘下面,创建一个 web_file 文件夹专门用于 hmtl 相关文件的存放。
-
file — setting — Editor — Colors & Fonts — Font — 点击 save as — 改变 size 即可。
API (application program interface):程序应用接口(不需要关心应用程序的内部实现,只需要知道接口名,调用即可。
HTML5
HTML5 并不仅仅只是做为 HTML 标记语言的一个最新版本,更重要的是它制定了 Web 应用开发的一系列标准,成为第一个将 Web 做为应用开发平台的 HTML 语言。
HTML5定 义了一系列新元素(新标签),如新语义标签、智能表单、多媒体标签 等,可以帮助开发者创建富互联网应用,还提供了一些 Javascript API,如 地理定位、重力感应、硬件访问 等,可以在浏览器内实现类原生应用。我们甚至可以结合 Canvas 开发网页版游戏。
HTML5的广义概念:HTML5代表浏览器端技术的一个发展阶段。在这个阶段,浏览器的呈现技术得到了飞跃发展和广泛支持。它包括:HTML5新标签、CSS3、Javascript API在内的一套技术组合。
HTML5 不等于 HTML next version。
HTML5 包含: HTML的升级版、CSS的升级版、JavaScript API 的升级版。
总结:
HTML5 是 Web 应用开发的一系列标准。包括:HTML5,CSS3,Javascript API 在内的一套技术组合。
一、应用场景
列举几个HTML5 的应用场景:
(1)极具表现力的网页:内容简约而不简单(代码实现)。
(2)网页应用程序:
• 代替PC端的软件:iCloud、百度脑图、Office 365等。
• APP端的网页:淘宝、京东、美团等。(通过网页实现的web应用程序)
• 微信端:公众号、小程序等。
(3)混合式本地应用。
(4)简单的游戏。(html5 代替了flash做动画)
二、新增内容
注:HTML 的职责是描述一块内容是什么(或其意义),而不是它长什么样子;它的外观应该由 CSS 来决定。
1、语义标签
• <section> 表示区块
• <article> 表示文章。如文章、评论、帖子、博客
• <header> 表示页眉
• <footer> 表示页脚
• <nav> 表示导航
• <aside> 表示侧边栏。如文章的侧栏
• <figure> 表示媒介内容分组。
• <mark> 表示标记 (用得少)
• <progress> 表示进度 (用得少)
• <time> 表示日期
本质上新语义标签与< div>、< span>没有区别,只是其具有表意性,使用时除了在 HTML 结构上需要注意外,其它和普通标签的使用无任何差别。
可以理解成<div class="nav"> 相当于<nav>。
注:单标签不用写关闭符号。
2、智能表单类型
• email 只能输入email格式。自动带有验证功能。
• tel 手机号码。
• url 只能输入url格式。
• number 只能输入数字。
• search 搜索框
• range 滑动条
• color 拾色器
• time 时间
• date 日期
• datetime 时间日期
• month 月份
• week 星期
注:上面的部分类型是针对移动设备生效的,且具有一定的兼容性,在实际应用当中可选择性的使用。
代码举例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单类型</title>
<style=>
</head>
<body>
<form action="">
<fieldset style="width:100px">
<legend>表单类型</legend>
<label for="email">
email:<input type="email" name="email" id="email" required>
</label><br>
<label for="">
color:<input type="color" name="color" >
</label><br>
<label for="">
url:<input type="url" name="url">
</label><br>
<label for="">
number:<input type="number" name="number">
</label><br>
<label for="">
range:<input type="range" name="range">
</label><br>
<label for="">
search:<input type="search" name="search">
</label><br>
<label for="">
tel:<input type="tel" name="tel">
</label><br>
<label for="">
time:<input type="time" name="time">
</label><br>
<label for="">
date:<input type="date" name="date">
</label><br>
<label for="">
week:<input type="week" name="week">
</label><br>
<label for="">
month:<input type="month" name="month">
</label><br>
<label for="">
<input type="submit" value="提交" name="submit">
</label>
</fieldset>
</form>
</body>
</html>
效果:
代码解释:
① < fieldset> 标签
将表单里的内容进行打包,代表一组;而< legend> 标签则是 fieldset 里的元素定义标题。
②< label>标签
< label> 标签为 input 元素定义标注(标记)。
label 元素不会向用户呈现任何特殊效果。
3、网页多媒体
在 HTML5 之前,在网页上播放音频/视频的通用方法是利用 Flash 来播放。但是大多情况下,并非所有用户的浏览器都安装了 Flash 插件,由此使得音频、视频播放的处理变得非常复杂;并且移动设备的浏览器并不支持 Flash插 件。
H5里面提供了视频和音频的标签。
(1)音频
HTML5 通过 < audio> 标签来解决 音频 播放的问题。
实例:
<audio src="music/yinyue.mp3" autoplay controls> </audio>
效果如下:
• autoplay :自动播放。写成 autoplay 或者 autoplay = “”,都可以。
• controls :控制条。(建议把这个选项写上,不然都看不到控件在哪里)
• loop :循环播放。
• preload: 预加载 同时设置 autoplay 时,此属性将失效。
• width:设置播放窗口宽度。
• height:设置播放窗口的高度。
处理兼容性问题:
不同的浏览器可支持播放的格式是不一样的
为了做到多浏览器支持,可以采取以下兼容性写法:
<!--推荐的兼容写法:-->
<audio controls loop>
<source src="music/yinyue.mp3"/>
<source src="music/yinyue.ogg"/>
<source src="music/yinyue.wav"/>
抱歉,你的浏览器暂不支持此音频格式
</audio>
代码解释:如果识别不出音频格式,就弹出那句“抱歉”。
(2)视频
HTML5 通过< video>标签来解决视频播放的问题。
实例:
<video src="video/movie.mp4" controls autoplay></video>
不同的浏览器可支持播放的格式是不一样的:
兼容性写法:
<!--<video src="video/movie.mp4" controls autoplay ></video>-->
<video controls autoplay>
<source src="video/movie.mp4"/>
<source src="video/movie.ogg"/>
<source src="video/movie.webm"/>
抱歉,不支持此视频
</video>
代码解释:如果识别不出 视频 格式,就弹出那句 “抱歉”。
综合练习:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<title>表单类型</title>
</head>
<body>
<form action="">
<fieldset style="width:30%" max-width="200px">
<!-- style="width:30%" 可以添加到 <form>标签里面,也可以添加到<fieldset>标签里面-->
<legend>表单类型</legend>
<br> <!--for 里面的属性必须与 input 标签里 id 的属性一致-->
<label for="email">email:</label>
<br>
<input id="email" type="email" name="email" style="width:100%">
<br>
<br>
<label for="">color:</label>
<br>
<input type="color" name="color" style="width:100%">
<br>
<br>
<label for="">url:</label>
<br>
<input type="url" name='url' style="width:100%">
<br>
<br>
<label for="">number:</label>
<br>
<input type="number" step="3" name="number" style="width:100%">
<br>
<br>
<label for="">range:</label>
<br>
<input type="range" name="range" value="100" style="width:100%">
<br>
<br>
<label for=""> search:</label>
<br>
<input type="search" name="search" style="width:100%">
<br>
<br>
<label for="">tel:</label>
<br>
<input type="tel" name="tel" style="width:100%">
<br>
<br>
<label for="">time:</label>
<br>
<input type="time" name="time" style="width:100%">
<br>
<br>
<label for=""> date:</label>
<br>
<input type="date" name="date" style="width:100%">
<br>
<br>
<label for="">datetime:</label>
<br>
<input type="datetime" style="width:100%">
<br>
<br>
<label for=""> week:</label>
<br>
<input type="week" name="month" style="width:100%">
<br>
<br>
<label for="">month:</label>
<br>
<input type="month" name="month" style="width:100%">
<br>
<br>
<label for="">datetime-local:</label>
<br>
<input type="datetime-local" name="datetime-local" style="width:100%">
<br>
<br>
<input type="submit">
<br>
<br>
<audio src="../宝石Gem - 野狼disco.mp3" controls autoplay loop ></audio>
<br>
<video src="../15ec0bf60857295d72b08f92b77d7e15.mp4" controls autoplay loop style="width:100%"></video>
</fieldset>
</form>
</body>
</body>
</html>
效果如下:
注意:此图拼接而成,本该一起显示。