语义标记对可视用户代理有什么实际好处

时间:2013-01-29 21:20:07

标签: html semantic-markup

经过多年创建HTML文档并尝试及时了解不同的标记模式和最佳实践,使得标记最有意义,我常常想知道这些语义将如何开始为最终用户付出代价。

让我们将问题引入:您有两个文件......

第一个文档使用当代HTML中所有最合理标准化的部分来创建一个丰富的文档结构,其中包含一些RDFa和选择的微型图像,用于表达HTML的示例性部分。

第二个文档与第一个文档的结构相同,只是标记已全部转换为div和spans,并且所有类名都是纯粹的样式挂钩:所有语义都已删除但页面渲染在效率和视觉上与第一个相同。

我感兴趣的是第一个文档对第二个文档的直接好处,对于通过桌面或移动浏览器与此HTML文档进行交互的有远见的人。您的答案可以发明内容的性质和特定浏览器功能的点,以证明您的观点。

你的答案不应包括:

  • 屏幕阅读器(用户有远见)
  • SEO(搜索引擎可见性的间接好处不在话题)
  • 语义标记更容易维护(也是间接的)

2 个答案:

答案 0 :(得分:1)

(当然,这是不完整的。这正是打字时我想到的。)

这个答案假定:对于没有屏幕阅读器的桌面/移动浏览器的用户;页面仅包含divspan元素(具有允许的属性);只有今天相关的内容(not tomorrownot in 2400 years)。

缺少元数据

  • 用户在为您的网页添加书签时,不会看到网站图标(icon链接类型;除非您在根目录中放置ICO img)或标题(title元素)
  • 创建快捷方式时无图标(apple-touch-iconmsapplication-TileImage,...)
  • 当用户在那里发布/引用/分享您的网页时,某些网络应用程序无法从您的网页中提取元数据(例如Open Graph Protocol
  • 浏览器不会自动检测您的Feed(alternate链接类型)
  • prefetchprerenderdns-prefetchpingbackprev / next等链接类型无(效果)优势,... < / LI>

(请注意,的一些可以使用HTTP标头完成。)

缺少默认功能

如果没有ainputtextareabutton等,则相应的功能需要JavaScript。没有JavaScript的用户无法点击链接,搜索,上传文件,提交表单......

没有(或有限)JS支持的原因:

  • 用户停用JS(全局,仅限站点/主机)
    • 故意,例如NoScript
    • 公司/ admin / etc。
    • 要求
  • JS文件无法加载(CDN问题,...)
  • 非常旧浏览器
  • ...

默认情况下,某些典型的导航机制可能无法使用(通过字段选中;焦点;按Enter键激活;搜索链接文本(例如Firefox中的')。)

浏览器扩展程序提供的功能缺失

各种浏览器插件(或bookmarklet等)可以解析标记和“做事”。

缺少默认“样式”

如果没有CSS支持,仅包含divspan元素的页面可能难以阅读,或者甚至可能变得难以理解(例如,考虑复杂的数据表)。

没有(或有限)CSS支持的原因:

  • 文字浏览器(Lynxw3m,...)
  • 非常古老的图形浏览器
  • 用户停用的CSS(全局,仅限网站,仅限页面)
  • 用户使用自己的样式表
  • CSS文件无法加载(CDN问题,...)
  • ...

有限的可重用性

  • copy&amp;粘贴:如果用户复制并粘贴一些内容和/或标记,并且您的自定义CSS没有“包含”(许多工具可能就是这种情况),那么理解/重用该内容/标记可能很难甚至不可能
  • 提取您的内容:其他人更难抓取您的内容(例如Piggy Bank)和/或对其进行转换(XSLT,XPath)

答案 1 :(得分:0)

对于视力不好的用户,可能没什么区别。

但是,您永远不应该假设用户的能力。

除了可访问性之外,最大的区别在于机器如何解释代码。所以,SEO很重要,即使你想要排除这一点。其他地方提到的浏览器扩展,以及未来可能发生的任何事情。