阅读更多

5顶
0踩

Web前端

转载新闻 W3C 验证的是是非非

2010-06-11 10:18 by 副主编 just_cool 评论(4) 有3648人浏览

W3C 验证让很多 Web 设计与开发者感到纠结,在自己的网页上放置一个验证按钮,点击以后,当看到 W3C 为你给出的全部是绿色对勾的时候,满足感油然而生,然而对这种机器验证的过度依赖往往带来另外的问题,本文讲述的是 W3C 验证中的一些是与非。

W3C Web 验证的现状

必须明白,所有有生命的东西必须在机械与常识之间取得平衡,虽然 Web 标准如今被奉为圭皋,然而那些用来对你的代码进行验证的工具并不代表最好的判断。下面的代码或许通不过验证,但在没有更好的替代方法之前是可以接受的。

Current Practices

 

那些不遵守代码验证的站点

我们可以对 Alexa 排名前 100 的站点进行 W3C 验证测试,会发现,大量的站点根本通不过验证,Amazon 的首页包含了大量的验证错误和警告,当然并不能说明 Amazon 存在什么严重的问题,不过,压根不关心验证和过于依赖验证都不可取。

Amazon's front page doesn't validate, but it doesn't mean they  don't care.

盲从验证规则

那些过分依赖验证的情形也值得我们担忧,很多人对验证形成了药物般的依赖,常常是为验证而验证,为了通过验证,他们不惜使用各种奇巧淫技。如果你对验证非常纠结,会很熟悉下面这些自动验证工具。

There are a lot of tools out there, but you should be wary about  which you rely upon.

语境为王

对验证而言,很多人经常忽视的一个问题是语境,验证工具是机器,而非人,机器永远无法取代人的判断。下面这个站点的设计,机器的评价会怎么样?它完全判断不了,机器看到的只是代码。

What does this design say to a machine? Nothing! It only sees the  code and that's it.

人能做出决断而机器不能

目前的技术,机器智能离真正的智能还有很远的距离,机器并不能理解语境和语义,将来也许能,但现在不能。

There may be a time where machines are as smart as humans, but  that's not today.

代码验证的问题

当前,最著名的代码验证包括 W3C 的 HTMLCSS 验证。很多网站会放置一个 HTML 和 CSS 验证按钮,表示自己的站点通过了验证,然而,通过了验证并不意味着你设计的东西是完美的。

Proclaiming the validity of your code doesn't mean what you've  produced is perfect.

无法顾及未来标准

如果你在设计中使用了未来的 Web 标准,如 CSS3,将无法通过验证,而现在非常有效的一种设计方式是,针对未来的标准使用渐进式设计,这种设计模式将很难通过验证。

为验证而验证

Nothing says:

为了取悦验证工具,一些设计师不得不对那些非 W3C 标准,然而却被普遍认可的对象或属性下手,最终,人们的设计是为机器,而不是用户设计。事实上,在你的网站上放一个或几个验证按钮,对用户来说,有什么意 义?很多用户并不知道什么事 HTML,什么是 CSS,他们对你是否通过了什么验证毫无兴趣。

可访问性验证

Cynthia 一类的 Web 可访问性验证工具只能验证它们所能认识的东西,也就是代码,而这对真正的可访问性验证远远不够。

Cynthia

可访问性与易用性测试只能通过人来进行

可访问性与易用性是非常主观的东西,那些基于代码验证的测试工具往往并不能发现真正的问题,需要真正的用户告诉你他们是否可以无障碍的,轻松地访问你的站点。下面的站点可以通过可访问性验证,但...

Do you speak Latin? No? This content would pass as accessible,  readable and valid!

验证工具就像机器翻译

现在最常用的机器翻译工具,如 Google Translate 以及 Babel fish 可以证明,没有什么东西比人更聪明,人类的语言不仅仅是一堆单词的堆砌,更要靠语境,而机器是无法理解语境的。验证工具和机器翻译是一个道理。

Google Translate is popular amongst websites for giving

用翻译实验看看机器翻译的能力

你可以找一段话,复制到 Google Translate, 先翻成别的语言,再从别的语言翻译回来,如此三番几次,就会知道机器翻译的局限。

See how the same sentence has been wrongly translated? It's not  uncommon!

结语

关于 W3C 代码验证,一个事实就是,验证本身并不能保证你的站点在语义,可访问性,易用性,乃至用户体验上的的完美,通过这些验证工具,发现你代码中的错误和问题是应该的,但过分追求验证的结果,为验证而验证时不可取的。

 

本文国际来源:Six Revisions Problems with Using Website Validation Services (原文作者:Alexander Dawson)

中文编译来源:锐商企业CMS 网站内容管理系统 官方网站

来自: comsharp
5
0
评论 共 4 条 请登录后发表评论
4 楼 snail5 2010-06-12 23:22
验证是你给学习用的,而不是让你给网站挂个图标的。如果你遵循W3C去写HTML或是CSS,你会少碰到很多莫名其妙的兼容性问题
3 楼 caiceclb 2010-06-12 09:02
很无奈,火狐、谷歌浏览器能够用私有属性实现标准属性的样式,但是他们却不愿意把私有属性就改为标准属性支持。。。
2 楼 caiceclb 2010-06-12 09:00
LSQ6063 写道
W3C很折腾!什么都标准,却什么都无法标准!
,W3C有能力制定标准却无能力让各个浏览器生产商履行标准。

W3C的HTML验证可以帮助你去寻找一些标签的bug
1 楼 LSQ6063 2010-06-11 11:09
W3C很折腾!什么都标准,却什么都无法标准!

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 使用popupwindow的坑(不显示)

    很多时候你可能会遇到popupwindow不显示或是一部分手机能显示一些不能显示的情况,那恭喜你看到了这篇文章。 最开始我创建popupwindow的方式 代码如下 //肉眼看上去没什么问题,果然拿出我的小米note跑起来也是正常的,但是偏偏来个三星和魅族的一些手机就显示不了 View view = LayoutInflater.from(this).inflate(R.

  • 日历的使用

     calendar.js日历的JS原码function GetDateWin(ctrlobj){ var winPopupWindow = new Object();  N = (document.all) ? 0 : 1; if(N) {     showx = 220 ; // + deltaX;     showy = 220; // + deltaY; }else {     show

  • windows.opener

    window.opener.location.reload();这个方法在强迫父窗口的时候,在有些IE浏览器(比如安全设置高)的情况下,会弹出一个确认对话框,提示是不是要重新再刷新一次页面,这可是比较郁闷的事情哦,我后来把这个方法替换成了window.opener.location.href=window.opener.location.href; 就不会出现那样的问题了。 ...

  • 弹出窗 的几种 PopupWindow

    转载 首先我们先达成一个共识:Dialog、PopUpWindow、Toast等都属于子窗口,子窗口必须依附在父窗口上。 1.toast 没有任何交互的 提示窗  它永远不会获得焦点,无法被点击, 2.dialog    https://blog.csdn.net/eclothy/article/details/39340657 dialog没法设置宽为整个屏幕宽, 总是有点边界, ...

  • Mozilla的架构(收集)

    o XBL 这种称为扩展绑定语言(Extensible Binding Language)的东东也是mozilla的一大特色,现在已经被W3C作为标准了。作为程序员,我们都知道公共函数库的重要性,公共函数库可以反复重用,从而提高开发效率。在开发...

  • QCon北京2011大会精彩回顾和总结

    从W3C成员的角度介绍了HTML 5的过去、现在和未来;淘宝前端工程师 李晶 分享了淘宝实际应用HTML 5技术的宝贵经验;MagnetJoy Games的CTO 杜欢 从网游的角度分析了HTML 5的优势;来自盛大创新院的 贺师俊 讲述了...

  • 基于 Mozilla 的扩展开发

    虽然以上的许多技术都是由 W3C 这样的互联网组织提出的,但 Mozilla 却用它们来做桌面开发。因为,这些扩展确切来说全都是程序,是一种面向桌面应用的程序,而不是网页一类的东西。 有了以上的这个观点,就不难...

  • 基于 Mozilla 的扩展开发(转)

    都 是由 W3C 这样的互联网组织提出的,但 Mozilla 却用它们来做桌面开发。因为,这些扩展确切来说全都是程序,是一种面向桌面应用的程序,而不是网页一类的东西。 有了以上的这个观点,就不 难解释它们所负责...

  • 网站数据统计分析之二:前端日志采集是与非

    在上一篇《网站数据统计分析之一:日志收集原理及其实现》中,咱们详细的介绍了整个日志采集的原理与流程。但是不是这样在真实的业务环境中就万事大吉了...带着这些疑问今天咱们就来聊聊前端日志采集中的这些是是非非。

  • 2023年全国大学生英语竞赛样题(C类)样题答案及听力原文.pdf

    2023年全国大学生英语竞赛样题(C类)样题答案及听力原文

  • 出纳考核表.xls

    出纳考核表

  • 基于多种天气因素的光伏电站太阳能辐射量预测系统-采用人工神经网络与离线优化算法,MATLAB代码:考虑多种天气条件下光伏电站太阳能辐射量预测 关键词:辐射量预测 光伏预测 多种天气因素 参考文档:

    基于多种天气因素的光伏电站太阳能辐射量预测系统——采用人工神经网络与离线优化算法,MATLAB代码:考虑多种天气条件下光伏电站太阳能辐射量预测 关键词:辐射量预测 光伏预测 多种天气因素 参考文档:《Solar Radiation Prediction and Energy Allocation for Energy Harvesting Base Stations》 仿真平台:MATLAB+CPLEX 平台 优势:代码具有一定的深度和创新性,注释清晰,非烂大街的代码,非常精品 主要内容:代码主要做的是如何利用预测光伏电站太阳能辐射量的问题,利用人工神经网络对对其内太阳辐射量进行预测,并对无云天气以及多云天气进行了分别讨论,与线性模型相比该模型具有更好的性能,除此之外,代码还研究了太阳能的分配问题,采用离线优化算法和四种在线启发式算法分别进行分配策略的优化,并利用太阳辐射数据评估了算法的性能。 该代码适合新手学习以及在此基础上进行拓展,代码质量非常高,出图效果极佳 ,核心关键词: 1. 光伏电站太阳能辐射量预测 2. 多种天气因素 3. 人工神经网络 4. 预测模型 5. 线性

  • 数据结构实验实习指导书(c语言)

    数据结构实验实习指导书(c语言)

  • 游戏 生存小游戏.exe

    "lyh不会打代码"生存小有戏改版

  • 站群系统/泛目录站群源码/泛站群cms系统【小说泛目录站群源码】

    站群系统/泛目录站群源码/泛站群cms系统【小说泛目录站群源码】 效果截图和演示https://www.lxsjfx.cn/3181.html 绿茶小说站群2.x-秒收隔天速出权重-小说流量稳定收割机-精品轻量级PHP站群系统站群系统,小说行业专用引流精品站群,绿茶小说站群为独立站群系统(无需依托CMS),独立的整篇小说优化内容库(拒绝句子拼凑),模板自适应PC端和移动端,流量一起做! 1、绿茶小说站群为独立站群系统(无需依托CMS) 2、对域名要求不高,百元域名均可操作 3、独立的首页、列表页、小说阅读页 4、独立的整篇小说优化内容库(拒绝句子拼凑) 5、可自定页面后缀(html、shtml、xml…..) 6、拒绝全站404跳转到内容页 7、还有强大的网站XML地图功能,便于链接提交 8、模板自适应PC端和移动端,流量一起做! 站群系统/泛目录站群源码/泛站群cms系统【小说泛目录站群源码】

  • IQC检验员(来料检验员)绩效考核表.xls

    IQC检验员(来料检验员)绩效考核表

  • 2024年全球AI应用趋势年度报告

    2024年全球AI应用趋势年度报告

  • 安全生产绩效考核表.doc

    安全生产绩效考核表

Global site tag (gtag.js) - Google Analytics