最近新浪、百度、腾讯、京东、大众点评、淘宝等流行的网站都加大了招聘HTML5的力度,HTML5开发人员成了抢手货,本次连载的是由大众点评前端工程师和一淘网前端工程师基情奉献的《HTML5网页开发实例详解》,喜欢本书的人可以关注连载,后续会更精彩!

2.1.1  最新的交互元素——内容交互、菜单交互、状态交互

HTML 5不仅仅只带来了一堆在语义上进行强化了的元素,同时在交互效果上也进行了极大的改变。也就是说,使用者可以在不使用JavaScript的情况下也能制作出满足一般需求的交互效果,这在笔者看来是一个非常友善的突破,可以通过HTML结构读出更多统一的使用规范和动态语义的交互信息。

首先看显示内容上的交互特性,这里向读者介绍的是details与summary两个元素。details元素用来描述文档或文档片段的信息,summary元素与details元素一同使用,用于说明文档的标题,同时,summary元素应为details元素的第一个子元素。通过一个简单的示例展示summary与details的使用,代码如下:

  1. <pre name="code" class="html"><!DOCTYPE HTML>
  2. <html>
  3. <style>details details{padding:15px}</style>                    <!-- 二级details样式-->
  4. <body>
  5. <details>
  6. <summary>交互</summary>                         <!-- 第一级detauls标题-->
  7. <details>
  8. <summary>内容交互</summary>                         <!-- 第二级detauls标题-->
  9. <p>details与summary元素</p>                            <!-- 文档内容 -->
  10. </details>
  11. </details></body></html>

details与summary元素示例的交互效果如图2.1所示。


图2.1  details与summary元素示例

details同时还具备open属性,用于表示是否展开可见,语法如下:

  1. <details open="open">

菜单交互中,命运最坎坷的应属menu元素,这个早在HTML 2时代就出现的元素,居然在HTML 4时遭到弃用,幸运的是HTML 5从语义的角度重新拾回menu元素。menu元素出现时常与li元素一同使用,用于排列表单控件。另外一个是command元素,按照W3C的说明,该元素有单选按钮、复选框、按钮3种类型,目前笔者测试了市面上主流的浏览器都暂时无法使用command元素特性,读者如果有兴趣可以自行尝试。

最后一类是状态交互类型,即可以理解为页面上的进度条。如progress元素、meter元素。progress元素一般用于下载或者上传时的进度显示,当状态产生变化时,可以通过设置progress的属性改变元素的交互状态。progress元素有两个关键属性:

  • value:进度的当前值,可以为整数或者浮点数。
  • max:完成的值,即总量,可以为整数或者浮点数。

下面通过一个简单的示例展示progress元素的使用,代码如下:

  1. <!DOCTYPE HTML>
  2. <html>
  3. <body>
  4. 下载进度:<progress value=30 max=100></progress>                     <!-- 当前进度-->
  5. </body>
  6. </html>

运行效果如图2.2所示。

图2.2  progress元素

meter元素与progress元素非常相似,主要用于定义度量衡,表示在一定范围内的值,如投票占比、使用量等。meter元素有6个关键属性:

  • value:实际度量的值,默认为0,可以为整数或者浮点数。
  • high:范围的上限值。
  • low:范围的下限值。
  • max:最大值,默认值是1。
  • min:最小值,默认值是0。
  • optimum:最佳的值,必须在min属性值与max属性值之间。

下面通过一个示例说明meter元素的使用,代码如下:

  1. <!DOCTYPE html>
  2. <html>
  3. <body>
  4. <p>投票结果:</p>
  5. <p>小周:                                        <!-- 小周的投票值 -->
  6. <meter value="20" optimum="100" high="100" low="0" max="100" min="0"></meter><span>20%</span>
  7. </p>
  8. <p>小王:                                        <!-- 小王的投票值 -->
  9. <meter value="80" optimum="100" high="100" low="0" max="100" min="0"></meter><span>80%</span>
  10. </p>
  11. </body>
  12. </html>

meter元素示例的运行效果如图2.3所示。

图2.3  meter元素投票示例

HTML5并不难,难的是没有那么多的应用开发经验,清华大学出版社推出的《HTML 5网页开发实例详解》是市场上唯一 一本HTML 5实用案例书,是通过应用案例的形式学习HTML5的最佳著作。关注新浪围脖@我的图书我做主,留下邮箱,我们免费赠送“大众点评”工程师为本书量身定制的HTML5R视频

免费的HTML5连载来了《HTML5网页开发实例详解》连载(二)的更多相关文章

  1. 免费的HTML5连载来了《HTML5网页开发实例详解》连载(六)媒体查询

    响应式设计的另一个重要技术手段是媒体查询.如果只是简单的设计一个流式布局系统,那么可以保证每个网格按比例的放大和缩小,但有可能会使得在小屏幕下(如手机设备)网格太小而严重影响阅读,这样的设计称不上响应 ...

  2. 免费的HTML5连载来了《HTML5网页开发实例详解》连载(五)图解通过Fiddler加速开发

    Fiddler是Windows底下最强大的请求代理调试工具,监控任何浏览器的HTTP/HTTPS流量,窜改客户端请求和服务器响应,解密HTTPS Web会话,图4.44为Fiddler原理示意图. 图 ...

  3. 免费的HTML5连载来了《HTML5网页开发实例详解》连载(三)DOCTYPE和字符集

    在2.1.2节中通过新老DOCTYPE的对比,读者可以清晰地看到HTML 5在精简旧有结构上做出的努力.DOCTYPE在出现之初主要用于XML中,用作描述XML允许使用的元素.属性和排列方式.起初HT ...

  4. 当里个当,免费的HTML5连载来了《HTML5网页开发实例详解》连载(一)

    读懂<HTML5网页开发实例详解>这本书 你还在用Flash嘛?帮主早不用了 乔布斯生前在公开信“Flash之我见”中预言:像HTML 5这样在移动时代中创立的新标准,将会在移动设备上获得 ...

  5. 《HTML5网页开发实例详解》连载(四)HTML5中的FileSystem接口

    HTML 5除了提供用于获取文件信息的File对象外,还添加了FileSystem相关的应用接口.FileSystem对于不同的处理功能做了细致的分类,如用于文件读取和处理的FileReader和Fi ...

  6. 读懂《HTML5网页开发实例详解》这本书

    你还在用Flash嘛?帮主早不用了 乔布斯生前在公开信<Flash之我见>中预言:像HTML 5这样在移动时代中创立的新标准,将会在移动设备上获得胜利. ——国际巨头Google.苹果等都 ...

  7. 感谢各位亲们的大力支持,免费的HTML5学习课程《HTML5网页开发实例具体解释》连载已经结束了!

    感谢各位亲们的大力支持,免费的HTML5学习课程<HTML5网页开发实例具体解释>连载已经结束了.  有兴趣的读者能够看我的博客,也能够看以下的链接逐个学习: 当里个当.免费的HTML5连 ...

  8. 免费的HTML5连载来了《HTML5网页开发实例具体解释》连载(六)媒体查询

    响应式设计的还有一个重要技术手段是媒体查询.假设仅仅是简单的设计一个流式布局系统,那么能够保证每一个网格按比例的放大和缩小,但有可能会使得在小屏幕下(如手机设备)网格太小而严重影响阅读,这种设计称不上 ...

  9. 《python开发技术详解》|百度网盘免费下载|Python开发入门篇

    <python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby  内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...

随机推荐

  1. 研华外触发实验PCI1714板卡安装事项

    1.安装在工控机中 研华的旧版本驱动和新版本的驱动文件不能同时安装,有冲突. 如何安装新版本: 卸载旧版本.控制面板中的device manager. 安装新版本的DAQ NAVI SDK文件,安装P ...

  2. tar.xz文件如何解压

    1. tar.xz介绍 XZ压缩最新压缩率之王 xz这个压缩可能很多都很陌生,不过您可知道xz是绝大数linux默认就带的一个压缩工具. 之前xz使用一直很少,所以几乎没有什么提起. 2. 压缩 ta ...

  3. C#注释的几种方法

    // 单行注释 /**/ 块注释 ///说明注释,注释以后可以自动生成说明文档档 #region 折叠注释,可以将代码折叠 #endregion 只是#region 所在行后面的文字是注释文字,而其它 ...

  4. sql附加数据库错误5120

    http://zhidao.baidu.com/link?url=p1o8EjUhn-RYFt1D4uIM-5HQF1oXZIRlPGaDiZ2FRMDzZDG1ooSARfkoPWG6SzTJTN6 ...

  5. nosql理解

    1.NoSQL是什么? NoSQL 是 Not Only SQL 的缩写,意即"不仅仅是SQL"的意思,泛指非关系型的数据库.强调Key-Value Stores和文档数据库的优点 ...

  6. log4net详解(转载)

    1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不同的媒介.本文主要是介绍如何在Visual S ...

  7. Java 性能优化技巧集锦

    摘要: =================================== 可供程序利用的资源(内存.CPU时间.网络带宽等)是有限的,优化的目的就是让程序用尽可能少的资源完成预定的任务.优化通常 ...

  8. js022-高级技巧

    js022-高级技巧 本章内容: 使用高级函数 防篡改对象 Yielding Timers 22.1 高级函数 1.安全的类型检测 2.作用域安全的构造函数 构造函数实际上是一个使用new操作符调用的 ...

  9. python学习笔记-(七)python基础--集合、文件操作&函数

    本节内容 1.集合操作 2.文件操作 3.字符编码与转码 4.函数操作 1.集合操作 集合是一个无序的.不重复的数据组合: 1.1 常用操作 它的作用是: 1)自动去重:列表变成集合,自动去重: &g ...

  10. DllImport dll中有些啥函数 及 dll中是否用到了别的dll

    在加载dll的时候不知道dll中有哪些接口怎么办,或者使用别人封装的东西时报出类似于“无法在 DLL“XXX.dll”中找到名为“XXX函数”的入口点.”     1.通过LordPE这个软件来看dl ...