在网页开发领域,"W3" 通常指代两个不同的实体:W3C(万维网联盟) 和 W3Schools。这两个组织在推动网页技术和教育方面发挥了重要作用。以下是它们各自的简要概述:
W3C(万维网联盟)
目的
W3C 是一个国际社区,致力于制定开放标准,以确保互联网的长期发展。它于1994年由万维网的发明者 Tim Berners-Lee 创立,目的是推动网页技术的普及和规范化。HTML 标准
W3C 负责维护当前的 HTML 标准,并与 WHATWG(Web 超文本应用技术工作组) 合作,制定最新的 HTML 规范。WHATWG HTML 标准是当前的标准,取代了之前的 HTML 规范。合作
2019年,W3C 与 WHATWG 达成协议,共同制定单一版本的 HTML 和 DOM 规范。这一合作增强了网页标准的一致性,并促进了开发工作。
W3Schools
概述
W3Schools 是一个提供网页开发语言教程和参考资料的教育网站。它于1998年成立,由挪威软件公司 Refsnes Data 运营。W3Schools 提供关于 HTML、CSS、JavaScript、PHP、SQL 等技术的详细学习资源。学习资源
W3Schools 提供多种学习资源,包括:- 教程:涵盖不同网页技术的全面指南。
- "Try it Yourself" 编辑器:这是一项互动功能,允许用户编辑代码并即时查看结果。
- 认证课程:用户可以通过完成平台提供的课程来获得证书。
内容结构
网站的教程面向初学者,内容覆盖网页开发的基本概念,如 HTML 结构、元素、属性等。例如,基础 HTML 文档结构包括<html>
、<head>
、<title>
、<body>
、<h1>
和<p>
等标签。
W3C HTML 与 WHATWG HTML 的主要区别
W3C HTML 和 WHATWG HTML 的主要区别在于它们的开发过程、规范和更新方法。以下是这些区别的总结:
开发过程
W3C:万维网联盟(W3C)传统上发布正式的规范,并经过多个阶段的结构化流程(候选推荐、提议推荐、推荐)。然而,自2019年起,W3C开始与WHATWG合作,支持WHATWG的规范,而不再独立发布新的HTML标准【2】【3】。
WHATWG:Web超文本应用技术工作组(WHATWG)维护一个“活标准”,意味着HTML规范是持续更新的,没有传统的版本化。这使得可以根据社区反馈和浏览器实现更快地集成变化【2】【4】。
W3C:万维网联盟(W3C)传统上发布正式的规范,并经过多个阶段的结构化流程(候选推荐、提议推荐、推荐)。然而,自2019年起,W3C开始与WHATWG合作,支持WHATWG的规范,而不再独立发布新的HTML标准【2】【3】。
WHATWG:Web超文本应用技术工作组(WHATWG)维护一个“活标准”,意味着HTML规范是持续更新的,没有传统的版本化。这使得可以根据社区反馈和浏览器实现更快地集成变化【2】【4】。
规范差异
元素使用:W3C的规范限制每个文档中只能使用一个 <main>
元素,以提高语义清晰度;而WHATWG允许在文档中使用多个 <main>
元素【1】【4】。
语义定义:W3C定义了某些元素具有特定的语义含义(例如,<main>
代表主要内容),而WHATWG则以更灵活的方式描述这些元素,关注它们作为容器的角色,而不强制执行严格的语义解释【4】。
废弃功能:W3C已经弃用了某些元素,如 <hgroup>
元素,原因是缺乏用例和实现;而WHATWG则可能会在其活标准中更长时间保留这些元素【1】。
元素使用:W3C的规范限制每个文档中只能使用一个 <main>
元素,以提高语义清晰度;而WHATWG允许在文档中使用多个 <main>
元素【1】【4】。
语义定义:W3C定义了某些元素具有特定的语义含义(例如,<main>
代表主要内容),而WHATWG则以更灵活的方式描述这些元素,关注它们作为容器的角色,而不强制执行严格的语义解释【4】。
废弃功能:W3C已经弃用了某些元素,如 <hgroup>
元素,原因是缺乏用例和实现;而WHATWG则可能会在其活标准中更长时间保留这些元素【1】。
可访问性与作者指导
W3C:提供关于可访问性特性的详细指导,鼓励遵循最佳实践,例如使用适当的标题级别和为图像提供替代文本。它强调通过清晰的语义结构来改善用户体验【1】【5】。
WHATWG:虽然WHATWG也关注可访问性,但它的方式可能较为宽松,更注重提供广泛的定义,这些定义可以根据浏览器中的实际使用情况随时间变化【4】。
W3C:提供关于可访问性特性的详细指导,鼓励遵循最佳实践,例如使用适当的标题级别和为图像提供替代文本。它强调通过清晰的语义结构来改善用户体验【1】【5】。
WHATWG:虽然WHATWG也关注可访问性,但它的方式可能较为宽松,更注重提供广泛的定义,这些定义可以根据浏览器中的实际使用情况随时间变化【4】。
社区参与
W3C:通过其流程促进社区的参与,但现在与WHATWG密切合作,确保社区反馈能够纳入WHATWG维护的活标准中【2】【3】。
WHATWG:鼓励开发者和浏览器厂商直接参与,塑造活标准,形成一个更具动态响应性的开发环境【2】【4】。
W3C:通过其流程促进社区的参与,但现在与WHATWG密切合作,确保社区反馈能够纳入WHATWG维护的活标准中【2】【3】。
WHATWG:鼓励开发者和浏览器厂商直接参与,塑造活标准,形成一个更具动态响应性的开发环境【2】【4】。
总结
W3C 和 W3Schools 在网页开发中都发挥了重要作用。W3C 主要关注网页标准和协议的制定,确保网页技术的统一性和可持续发展;而 W3Schools 则作为一个实用的学习资源,帮助新手开发者掌握网页开发技能。两者互为补充,为网页技术的学习和发展提供了重要支持。
虽然W3C HTML和WHATWG HTML都旨在定义网页开发所需的HTML标准,但W3C的结构化方法与WHATWG的流动标准模型形成了鲜明对比。W3C更侧重于传统的规范发布流程,而WHATWG则采用更灵活、实时更新的方法。这种合作旨在统一两者的努力,减少开发者的困惑,并保持对不断发展的网络技术的关注。
参考资料
[1] https://www.w3.org/wiki/HTML/W3C-WHATWG-Differences
[2] https://techxplore.com/news/2019-06-w3c-whatwg-agreement-version-html.html
[3] https://www.w3.org/blog/2019/w3c-and-whatwg-to-work-together-to-advance-the-open-web-platform/
[4] https://www.telerik.com/blogs/w3c-vs-whatwg-html5-specs-differences-documented
[5] https://www.tpgi.com/w3c-html-and-whatwg-html-split-affect-on-html-accessibility/
[6] https://brucelawson.co.uk/2014/on-html5-vs-living-standard-w3c-vs-whatwg/
[7] https://www.w3.org/html/
[8] https://meta.stackoverflow.com/questions/332376/html-documentation-whatwg-vs-w3c-vs-browser-support
评论
发表评论