看了《CSS那些事儿》我一直遵循着给每个板块写一个h标签,并保持层次,比如导航条、焦点图我都写了一个缩进隐藏的h标签。这种规范一般人根本看不出来,即使是行内的大多数人也觉得没有必要。可是我一直自己默默的遵循着,强迫症啊 T T。
最近在看《HTML5经典实例》,当我看到第一章中“html5大纲算法”功能的时候我乐了,原来html5中提出了用h标签生成文档的功能,就像一个目录树。至于它可以做什么,书上说利于盲人软件对网站结构的识别,可以通过这个“目录树”方便进行页面跳转。例如这个儒之堂足浴的首页,生成的目录树如下图:

我给logo写了h2作为这个页面中最大的h标签,而h1作为预留的,文章页的标题才用h1。页面按板块分别写了h3,如果下面还有板块再使用h4如此类推。

如何才能查看这个目录树,只要要在谷歌浏览器上装一个HTML5 Outliner插件就能查看了。安装后浏览器的地址栏上会多一个outliner图标,点击后就能生成改页面相应的“目录树”了,但是只能查看线上的网页哦。这个插件会在你的html页面上增加一些额外的id和属性 定位各个板块,用来让用户点击目录树上的链接 相应的板块能够闪烁。

虽说HTML5有了这么个功能和理念,事实上没有任何盲人软件支持这一特性。但是既然是新理念,而且是一个不错的理念,我们就应该开始遵循起来,严格要求自己才能把代码写的更好。
类似的页面习惯还有很多,给每个图片写上alt、给必要的链接写上title描述、保持页面的结构顺序、坚持结构、行为、表现相分离等等。

html5大纲算法和HTML5 Outliner的更多内容:HTML5 大纲算法(HTML5 Outliner)

html5大纲算法(目录树)的更多相关文章

  1. html5--6-68 实战前的准备工作:了解HTML5大纲算法

    html5--6-68 实战前的准备工作:了解HTML5大纲算法 学习要点 了解HTML5大纲算法 在html5中有一个很重要的概念,叫做HTML5大纲算法(HTML5 Outliner),它的用途为 ...

  2. HTML5大纲算法

    什么是HTML大纲算法? 大纲算法允许用户代理(user agent)从一个web页面生成一个信息结构目录,让用户对页面有一个快速的概览.类似书籍.PDF.帮助文档等,都有一个清晰的目录结构,用户能方 ...

  3. 第八十七节,html5+css3pc端固定布局,大纲算法,section和div,结构分析

    html5+css3pc端固定布局,大纲算法,section和div,结构分析 一.大纲算法 在HTML5中有一个很重要的概念,叫做HTML5 大纲算法(HTML5Outliner),它的用途是为用户 ...

  4. HTML5区块和大纲算法

    原文链接: Using HTML sections and outlines - Mozilla Developer Network 每集HTML5+CSS3网页布局教程-2大纲算法 HTML5标准带 ...

  5. 【.net 深呼吸】将目录树转化为文本

    大伙都知道,文件系统是树形结构的,有时候我们会想到把目录的层次结构变为纯文本形式,就像这样: ├─Windows-universal-samples-master │ ├─Samples │ │ ├─ ...

  6. python 小程序 复制目录树

    1. 将一个目录树完全复制到另外一个目录下面 import os, sys """ 复制目录树 """ maxloadsize = 1024 ...

  7. vs切换当前编辑文件时自动定位目录树

    在编辑区,切换当前编辑文件时(单击.cpp或.h文件选项卡),"解决方案资源管理器"目录树会自动定位当前编辑的文件,并以灰色标识,当一个解决方案中的工程数目数目很多,每个工程下面又 ...

  8. html5大纲

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 14.KVM安装之脚本和镜像目录树准备

    1.php脚本需要先安装PHP环境,Apache服务器必须支持PHP $ yum install -y php    #安装PHP $ php -v                      #查看是 ...

随机推荐

  1. 数据结构实习 - Problem N 树的括号表示法

    writer:pprp date:20171103 题目描述 先将根结点放入一对圆括号中,然后把它的子树按由左而右的顺序放入括号中,而对子树也采用同样方法处理:同层子树与它的根结点用圆括号括起来,同层 ...

  2. SpringBoot中使用log4j日志

    一:引入jar包 使用SpringBoot创建项目的时候,pom文件引入了spring-boot-starter,其中包含了spring-boot-starter-logging,该依赖内容就是Spr ...

  3. form表单提交数据的数据格式

    form表单提交的数据格式默认是 enctype="application/x-www-form-urlencoded"这样将input框的数据与input框的name属性以键值对 ...

  4. vs2012 在调试或运行的过程中不能加断点

    在使用VS2012 的过程中,突然发现在调试的过程中,不能加断点,显示断点未能绑定.在搜寻了很多解决方案后未能解决,3.23这一天,重装了VS也没有用. 便想着把网上所有的方法都试个遍也要解决这个问题 ...

  5. 清理网页中的HTML

    public string ClearHtml(string text)//过滤html,js,css代码 { text = text.Trim(); if (string.IsNullOrEmpty ...

  6. Apache的三种工作模式及相关配置

    Apache的三种工作模式 作为老牌服务器,Apache仍在不断地发展,就目前来说,它一共有三种稳定的MPM(Multi-Processing Module,多进程处理模块).它们分别是 prefor ...

  7. 安装使用babel-polyfill。让IE支持es6

    安装 npm install --save-dev babel-polyfill 使用 在你的代码头部加载babel-polyfill,注意一定要在你的代码开始前,第一个js文件的顶部.如果是vue在 ...

  8. yum离线安装

    安装yum-plugin-downloadonly插件 yum install -y yum-plugin-downloadonly 下载对应的软件包,我们以mysql为例,终端输入如下命令 yum ...

  9. vue基础指令

  10. hdu 4771 13 杭州 现场 B - Stealing Harry Potter's Precious 暴力bfs 难度:0

    Description Harry Potter has some precious. For example, his invisible robe, his wand and his owl. W ...