网页设计HTML和css(4)

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在内的一套技术组合。

API(application program interface):程序应用接口(不需要关心应用程序的内部实现,只需要知道接口名,调用即可。)
HTML5 的应用场景
列举几个HTML5 的应用场景:
(1) 极具表现力的网页:内容简约而不简单(代码实现)。
(2) 网页应用程序:
• 代替PC端的软件:iCloud、百度脑图、Office 365等。
• APP端的网页:淘宝、京东、美团等。(通过网页实现的web应用程序)
• 微信端:公众号、小程序等。
(3) 混合式本地应用。
(4) 简单的游戏。(html5 代替了flash做动画)
HTML5 新增的内容
之前说过,html是包括:HTML5,CSS3,Javascript API在内的一套技术组合,我们现在只介绍关于HTML中新增加的部分。

总结:HTML的职责是描述一块内容是什么(或其意义),而不是它长什么样子;它的外观应该由CSS来决定。

H5中新增的语义标签

<section> 表示区块

<article> 表示文章。如文章、评论、帖子、博客

<header> 表示页眉 成对

<footer> 表示页脚

<nav> 表示导航

<aside> 表示侧边栏。如文章的侧栏

<figure> 表示媒介内容分组。

<mark> 表示标记 (用得少)

<progress> 表示进度 (用得少)

<time> 表示日期

<main>主要内容区,一个页面中main仅能使用一次

本质上新语义标签与<div>、<span>没有区别,只是其具有表意性,使用时除了在HTML结构上需要注意外,其它和普通标签的使用无任何差别,可以理解成<div class="nav"> 相当<nav>
PS:单标签不用写关闭符号。

H5中的表单

传统的Web表单已经越来越不能满足开发的需求,HTML5 在 Web 表单方向做了很大的改进,如拾色器、日期/时间组件等,使表单处理更加高效。

H5中新增的表单类型

email 只能输入email格式。自动带有验证功能。

tel 手机号码。

url 只能输入url格式。

number 只能输入数字。

search 搜索框

range 滑动条

color 拾色器

time 时间

date 日期

datetime 时间日期

month 月份

• week 星期
上面的部分类型是针对移动设备生效的,且具有一定的兼容性,在实际应用当中可选择性的使用。
代码举例:

<!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>
        <legend>表单类型</legend>
        <label for="">
            email: <input type="email" name="email" required>
        </label>
        <label for="">
            color: <input type="color" name="color">
        </label>
        <label for="">
            url: <input type="url" name='url'>
        </label>
        <label for="">
            number: <input type="number" step="3" name="number">
        </label>
        <label for="">
            range: <input type="range" name="range" value="100">
        </label>
        <label for="">
            search: <input type="search" name="search">
        </label>
        <label for="">
            tel: <input type="tel" name="tel">
        </label>
        <label for="">
            time: <input type="time" name="time">
        </label>
        <label for="">
            date: <input type="date" name="date">
        </label>
        <label for="">
            datetime: <input type="datetime">
        </label>
        <label for="">
            week: <input type="week" name="month">
        </label>
        <label for="">
            month: <input type="month" name="month">
        </label>
        <label for="">
            datetime-local: <input type="datetime-local" name="datetime-local">
        </label>
        <input type="submit">
    </fieldset>
</form>
</body>
</html>

代码解释:
<fieldset> 标签将表单里的内容进行打包,代表一组;而<legend> 标签的则是 fieldset 里的元素定义标题。

<label>标签

<label> 标签为 input 元素定义标注(标记)。
label 元素不会向用户呈现任何特殊效果。<label> 标签的 for 属性应当与相关元素的 id 属性相同

多媒体

在HTML5之前,在网页上播放音频/视频的通用方法是利用Flash来播放。但是大多情况下,并非所有用户的浏览器都安装了Flash插件,由此使得音频、视频播放的处理变得非常复杂;并且移动设备的浏览器并不支持Flash插件。
H5里面提供了视频和音频的标签。
音频
HTML5通过<audio>标签来解决音频播放的问题。
使用举例:

<audio src="music/yinyue.mp3" autoplay controls> </audio>

效果如下:
在这里插入图片描述
我们可以通过附加属性,来更友好地控制音频的播放,如:
• autoplay 自动播放。写成autoplay 或者 autoplay = “”,都可以。
• controls 控制条。(建议把这个选项写上,不然都看不到控件在哪里)
• loop 循环播放。
• preload 预加载 同时设置 autoplay 时,此属性将失效。

处理兼容性问题:
由于版权等原因,不同的浏览器可支持播放的格式是不一样的:
在这里插入图片描述
为了做到多浏览器支持,可以采取以下兼容性写法:

<!--推荐的兼容写法:-->
<audio controls loop>
    <source src="music/yinyue.mp3"/>
    <source src="music/yinyue.ogg"/>
    <source src="music/yinyue.wav"/>
    抱歉,你的浏览器暂不支持此音频格式
</audio>

代码解释:如果识别不出音频格式,就弹出那句“抱歉”。
视频
HTML5通过<video>标签来解决视频播放的问题。
使用举例:

我们可以通过附加属性,来更友好地控制视频的播放,如:
autoplay 自动播放。写成**autoplay 或者 autoplay = “”,**都可以。
controls 控制条。(建议把这个选项写上,不然都看不到控件在哪里)
loop 循环播放
preload 预加载 同时设置 autoplay 时,此属性将失效。
width:设置播放窗口宽度。
height:设置播放窗口的高度
由于版权等原因,不同的浏览器可支持播放的格式是不一样的:
在这里插入图片描述
兼容性写法:

<!--<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>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值