自从我第一次 谈到 CSS4¹ 的事情以来,关于它已经有了很多讨论。我将在这里总结一下我从其他人那里获得的最佳想法。关于这个问题有很多讨论,所以我将尽可能地在这里进行提炼,希望让它更容易理解。
- Jen Simmons 在 GitHub 上 CSS 工作组草案仓库下启动了一场讨论。目前,对于想要了解 CSS 最新动态的开发人员来说,最好的方法是 *“不断跟进”*,但这行不通。最好是围绕某些东西“划一条线”,然后说“好了,就是这些。这部分已经准备好了。这部分已经完成了。”
- Michelle Barker 表示,在没有指导的情况下很难确定学习的优先级。
- Nicole Sullivan 认为,如果开发人员能够“勾选”CSS4 的框,它将“推动开发人员升级他们的技能,企业升级他们的技术栈,浏览器专注于跨浏览器兼容性。”
- Dave Rupert 认为 通过版本号感知速度 很有价值。
- Natalya Shelburne 说,在“时间紧迫的世界里”,她合作的工程师不认为新的 CSS 已经可以投入生产,因此不优先考虑学习它。
- Rachel Andrew 认为,浏览器对功能的支持,特别是子功能的复杂性和细微性,是一个障碍。由于我们不知道其他人的浏览器支持要求,因此建议学习/使用通用功能是不负责任的。
- Brian Kardell 提出,JavaScript 每年都“版本化”,而且看起来效果不错(虽然 Shawn Wang 正确地 提到,我们可能应该问问他们哪些有效,哪些无效)。**就我个人而言,我更喜欢 CSS2020 而不是 CSS4**(我只是喜欢它与 JavaScript 的同步性),Brain Kardell 认为,仅仅因为我们在名称中使用年份并不意味着我们必须每年都这样做。Chen Hui Jing 提到,Babel 在一定程度上会带来麻烦。为新的 JavaScript 提供 polyfill 与为新的 CSS 提供 polyfill 是截然不同的,这会影响预期。
- Miriam 认为,我们需要确定一个功能列表,但它应该是基于标准的。我认为标准应该是规范的状态、浏览器支持(“两个主要浏览器”是最常见的主题)以及某种重要性修饰符。我的第一篇文章尝试列出了一个功能列表,这里还有另一个想法。PPK 同意 flexbox 已经太老了,并且 支持 网格和自定义属性。Timothy Miller 有 一些想法.
- fantasai 不认为 这个信息应该来自 CSSWG。
- 我们越是不断地称它为 CSS4,就越难用其他名字来称呼它。如果最终结果是这样,那就没问题,但我更倾向于模仿 JavaScript 的“版本控制”。在这之后,我将不再称它为 CSS4,直到有一个更好的名称确定下来。
我喜欢 CSS2020。将所有准备投入生产的内容都归入 CSS2020,然后将其他功能推迟到 CSS2021。这是一种简单易行的方法,可以展示规范在任何给定时间包含什么和不包含什么,而不是多种处于不同准备状态和版本的模块。
模块系统可以很容易地保留在 CSS2020 命名系统中,其中 CSS 选择器级别 3(或 4 或 5 …)是正式规范,而 CSS2020 更像是“已准备就绪”的集合。
CSS:CPU 觉醒
那个脚注比看起来要重要得多。它甚至可能为时已晚!我们可能已经不小心称它为 CSS4,并将其理解为“自 CSS3 以来所有新的内容”(pp-koch 认为这可能不是一件坏事)。将 CSS4 称为 CSS 中新事物的昵称有什么危害吗?它必须得到官方认可吗?当我们厌倦了称它为 CSS4(看起来大约十年时间就够了)时,我们将发明 CSS5。