人们不使用CSS新功能的5个原因

3,448 阅读4分钟

原文:blog.logrocket.com/5-reasons-w…
作者:Nathan Sebhastian
翻译:杜尼卜

尽管每年都会开发和发布新的CSS特性和属性,但web开发人员很少学习它们或在他们的项目中使用。

这是一个问题,因为CSS工作组(维护和改进CSS规范的开发人员团队)通过查看这些新功能的采用率来衡量成功与否。

这是一个鸡生蛋还是蛋生鸡的问题。如果社区不采用和实现新特性,工作组就不会费心维护它们。另一方面,如果工作组不努力改进特性,用户可能不会采用它们。

但是,如果我们都同意认为更新JavaScript和React代码很重要,那么为什么我们倾向于认为不值得花精力更新CSS?让我们来探索一些可能的原因,为什么人们在2020年没有使用新的CSS功能。

1.实施新的CSS功能需要付出一定的代价

实现CSS特性需要花费开发人员的时间,这将影响项目所有者的底线。你的客户可能认为你最好将时间花在优化其他特性上。

你可以尝试寻找浏览器不支持的功能的替代方法,但是与JavaScript不同,JavaScript使用Babel来完成这项工作,而CSS则没有提供这样的功能。

2.CSS要精益求精,这不是优先事项

一个新项目可能只有一些CSS规则,但是随着它的发展和扩展,你的小CSS规则很快就会变成一个纠结的意大利面怪物。CSS必须精简且易于理解,因此通常最好使用已经可以投入生产的稳定功能。

大多数网站甚至在早期阶段都不使用CSS,因为他们可以使用Bootstrap,然后就结束了。只有在它获得一些吸引力之后,利益相关者才会考虑开发一种更符合他们品牌的定制风格。即便如此,通常还有比升级CSS更紧迫的任务。

3.如果还没有坏,为什么要修复它?

编写CSS的主要目标是描述你的网站的表现形式,使其美观和易于理解。CSS通过控制两件事来帮助开发人员实现这个目标:布局和设计。布局(Layout)描述列和行,而设计(design)指颜色、字体、间距、动画和边框。

我想我们都同意CSS的当前状态已经很好地处理了这些问题。当然,有些部分可以进行更好的优化,但是一天只有那么几个小时。当您有空闲时间时,你有多大可能专注于优化CSS而不是其他事情?只要它没有损坏,为什么要修复它?

4.跟上CSS很难

React和Vue定期举行社区会议,甚至JavaScript也会偶尔召开一次会议。那么CSS呢?你如何跟上它的发展并保持对新功能的了解?

CSS没有版本控制,也不需要。没有会议,就没有激情。人们根本不重视他们所使用的技术的发展。我们都忙于为客户开发应用程序。跟上CSS的唯一方法是阅读文档。但既然旧的技术已经足够了,为什么还要麻烦呢?

与框架和编程语言不同,CSS没有针对安全问题的补丁程序。至于设计本身,大多数客户只关心他们的网站看起来完全像他们想象的那样,开发人员没有足够的动力跟上CSS的发展。

5. CSS不是吸引人的投资

假设你在掌握CSS新功能方面付出了辛勤的工作,你如何向潜在客户或雇主证明这一点?您不能在履历表中加入“ CSS3以外的CSS”。 CSS3在CSS开发领域取得了巨大的成功,因为它迫使:

  • 浏览器厂商实现新的CSS支持
  • 开发人员提高他们的技能
  • 商业领袖更新他们的技术栈

巨大的需求带来了巨大的机会。发布书籍、课程和教程视频来帮助人们了解CSS3。还有一些布局模型,如Flexbox和Grid,尽管它们不是CSS3的一部分。

一些开发人员主张将所有新的CSS功能放在CSS4的旗帜下。但是,我们如何定义CSS4?我们包括或排除哪些模块?如果它没有对CSS3进行任何大的改动,社区甚至会采纳吗?对开发者来说,把时间花在其他更容易看到、更容易营销的东西上不是更好吗?


如果对你有所启发和帮助,可以点个关注、收藏,也可以留言讨论,这是对作者的最大鼓励。

作者简介:Web前端工程师,全栈开发工程师、持续学习者。

现在关注 《前端外文精选》 微信公众号,还送某网精品视频课程网盘资料啊,准能为你节省不少钱!