HTML 5 预览

作者:zhaozy 来源:蓝色理想 时间:2008-01-24 12:17:00 

作者:Lachlan Hunt

概要

网络是不断的进化的. 新的和有创意的网站每天都在出现, 从各方面都在冲击着HTML的边界. HTML 4来到我们身边已经差不多有10年了, 发行者们不断的寻求提供更强大的功能的新技术, 但是常会因为标记语言和浏览器的约束而路途坎坷.

为了给作者们提供更灵活, 更具互操作性, 能有更多交互性并令人振奋的网站和应用程序, HTML 5 引入并加强了一系列功能, 包括表单控制, 应用程序接口(APIs), 多媒体, 结构化和语义化.

HTML 5的工作, 开始于2004年, 在 W3C HTML WG 和 WHATWG 的共同努力下现在正在全面贯彻落实. 很多关键角色参与了W3C的努力, 最具代表性的是4大浏览器厂商: Apple, Mozilla, Opera, Microsoft; 还有一系列的有着不同利益和专业技术的其他机构以及个人.

编写详细规范的工作还在进行中, 离完成还有很长的路要走. 同样的, 在这篇文章中讨论的功能不排除在未来有所改动的可能. 这篇文章只是以大纲的形式介绍一些在当前的草案中的主要的特性.

结构

HTML 5 引入了一整套全新的元素来让构建页面变得更加简单. 大多数基于HTML 4的页面的包含多种常用结构, 比如说页首(header), 页脚(footer)和纵列(column). 现阶段我们通常会用div元素标记这些区块, 然后为它们定义一个描述性的id或是class.

图表说明一个典型的用div元素带上id和class属性标记的2栏布局. 其中包括页首(header)和页脚(footer), 在页首下面是一个水平导航条, 主体内容又包含了文章(article)和它右边的侧边栏(sidebar).

大量的使用div元素是因为目前的HTML 4版本缺少更明确的语义描述这些区块所致. HTML 5 为了表现这些不同的区块而引入了新的元素.

那些div元素可以被新的元素代替了: header, nav, section, article, aside以及footer.

<body>
  <header>...</header>
  <nav>...</nav>
  <article>
   <section>
   ...
   </section>
  </article>
  <aside>...</aside>
  <footer>...</footer>
</body>

用这些新元素会有一些优势(相对于HTML 4). 当和标题元素(h1 - h6)一同使用时, 可以标记出嵌套的章节标题层次, 超越之前版本的HTML仅有的六个层次. 规范中包含了一份生成大纲的详细算法. 把结构化这些内容纳入考虑范围, 并仍旧向后兼容先前的版本. 这样可以在编辑工具以及浏览器中生成目录来帮助用户来浏览这个文档.

举例说明, 下面的标记结构使用了嵌套的章节和h1元素构成:

<section>
  <h1>Level 1</h1>
  <section>
   <h1>Level 2</h1>
   <section>
    <h1>Level 3</h1>
   </section>
  </section>
</section>

这里要注意, 为了更好的兼容现在的浏览器, 它也能在适当的位置利用其它的标题元素(h2 - h6)来代替h1元素.

通过辨别页面中的章节使用特殊章节元素的确切目的, 辅助的技术能帮助用户更容易的浏览这个页面. 举例, 他们能不费力的略过导航区块或者能快速的从一篇文章直接跳到下一篇而不需要作者提供跳转链接. 对于创作者来说, 在文档中去掉多余的div, 而用一些更明显的元素代替它们, 会让源代码更清楚而且更容易书写.

标签:HTML,W3C,元素,css,HTML,5
0
投稿

猜你喜欢

  • python将pandas datarame保存为txt文件的实例

    2021-11-17 06:21:51
  • Python数字比较与类结构

    2023-07-29 13:33:51
  • sql server海量数据库的查询优化及分页算法方案

    2010-07-02 21:17:00
  • python 利用panda 实现列联表(交叉表)

    2022-02-21 02:24:32
  • 详解golang碎片整理之 fmt.Scan

    2024-02-20 12:51:16
  • Python模块zipfile原理及使用方法详解

    2022-03-24 10:33:37
  • 基于Python实现批量缩放图片(视频)尺寸

    2021-03-23 12:21:22
  • win8下python3.4安装和环境配置图文教程

    2022-10-29 03:23:29
  • Pytorch Tensor的索引与切片例子

    2022-12-08 16:28:10
  • 详解MySQL监控工具 mysql-monitor

    2024-01-25 23:03:16
  • python之消除前缀重命名的方法

    2021-12-25 09:28:42
  • Python数据可视化详解

    2021-10-02 19:28:55
  • Python反射机制案例超详细讲解

    2022-08-06 16:24:53
  • Python教程之全局变量用法

    2023-12-18 11:55:35
  • python语言线程标准库threading.local解读总结

    2023-12-22 18:18:07
  • windows下安装python的C扩展编译环境(解决Unable to find vcvarsall.bat)

    2022-03-22 02:31:42
  • MySQL 数据(字段)类型

    2011-09-10 16:15:56
  • 编写一个JS组件来说说call和apply的用法

    2008-11-23 17:11:00
  • Python写入CSV文件的方法

    2021-08-21 19:09:44
  • golang 输出重定向:fmt Log,子进程Log,第三方库logrus的详解

    2024-04-27 15:40:14
  • asp之家 网络编程 m.aspxhome.com