从首次HTML状态调查中我们学到了什么

原文信息: 查看原文查看原文

Here’s What We Learned From the First State of HTML Survey

- Sacha Greif

Frontend Masters是JS、CSS和HTML调查的赞助商

我们刚刚发布了首次HTML状态调查的结果,这是数月辛勤工作的结果,不仅是我的努力,还有Lea Verou设计的调查问题,以及许多志愿者帮助翻译、提高可访问性、测试等。

至少可以说,这次调查是成功的,有超过20,000名受访者参与并回答了多达90个问题!我们希望产生的数据将证明是未来几年对web开发社区有用的资源。

但我们也明白,不是每个人都有时间浏览页面的统计数据和数据可视化。所以如果你是这样的人,这里有一个快速回顾,总结了调查中最有趣的发现。

人们喜欢Datalist

今年调查的一个关键创新是,受访者不仅可以指定他们对一个功能的经验(“使用过它”,“听说过它”,“从未听说过它”),还可以指定他们的情绪,换句话说,他们是否满意/不满意,感兴趣/不感兴趣等。

在积极情绪方面排名第一的特性是datalist,有55.4%的积极情绪和只有3.9%的消极情绪(其余为中性)。

Datalist是一个不太新的元素(它在2019年左右被广泛支持),它允许你创建一个自动完成/提前输入组件,而不需要任何JavaScript。虽然它可能没有典型的JavaScript实现那么灵活,但它仍然非常方便——而且更容易正确使用!

其他受欢迎的特性包括新基础的Popover API和它的表亲,dialog元素,它们都类似于datalist,因为它们原生模拟了开发者长期以来依赖JavaScript的特性。

换句话说,尽管在过去的十年中,我们许多人已经接受了JavaScript前端框架,但归根结底,我们仍然更愿意让浏览器来处理事情!

…但是讨厌表单

虽然受访者分享了他们对许多web API的喜爱,但有一个领域他们毫不掩饰他们的不满:表单。

我们询问受访者HTML表单周围的问题是什么,这个问题收集了超过11,000条响应——我说的是自由形式的评论,不仅仅是点击复选框!

那么人们为什么这么生气呢?排名第一的超过3,600条评论是样式,或者缺乏样式。select元素尤其经常出现,这是有道理的,因为这样一个无处不在的UI元素——这就是为什么有一个正在进行的新提案,提出了一个更容易样式化的替代方案。

除了样式问题,受访者分享了他们对其他表单输入元素的各种抱怨,其中最主要的是<input type="date" />。正如一位受访者提到的,“日期输入真的不实用,也不完全可访问”。

验证也是一个大问题,特别是当你试图执行更高级的任务时,例如根据另一个字段的值有条件地验证一个字段。

值得一提的是,当受访者被问及由于浏览器差异或缺乏支持而无法使用现有HTML特性或浏览器API时,表单输入元素也排在首位,以及由于其他原因无法使用的特性。

Web组件……存在

当涉及到web组件时,开发者社区大致分为三个阵营。第一个阵营认为它们是下一个大事,它们将随时接管这个行业,你看着吧!

第二个阵营认为它们是一个注定要失败的倡议,特别是当前端框架已经提供了所有相同的功能甚至更多时。

最后,第三个阵营在它们有意义的时候一直悄悄地使用web组件,并且大多保持沉默。

公平地说,调查中很好地代表了第二个阵营,许多人抱怨web组件与React、Vue和其他框架的互操作性不足;或者甚至质疑它们的存在的必要性。而且,前5个最消极情绪的特性中,有3个也与web组件相关。

在那些确实使用web组件的人中,样式和定制再次成为一个大问题,表明我们可能需要更多的现成解决方案;但我们仍然希望能够适应它们以满足我们的需求。

然而,就像web平台的其他部分一样,web组件也在不断发展。在它们的时代到来之前,完全可以只按需使用它们。

我们需要Datatables、Tabs和Switches,我们昨天就需要它们!

受访者被问及如果他们可以选择,他们会添加什么元素到HTML中,前三名的结果分别是datatables(带有排序、过滤等控制的表格)、标签和切换/开关。

这很有趣,因为所有这三个组件在静态站点中相对罕见(尽管深色模式切换正在变得流行),但在任何类型的仪表板或应用程序中都非常常见。

这让人回想起文档和应用程序之间的古老二分法,尽管我们早已超越了HTML只适用于描述静态内容的观念,但这些元素仍然缺失的事实表明,我们还没有完全接受HTML作为以应用程序为中心的平台。

分隔……正在缩小?

五年前,一个你可能从未听说过的名叫Chris的家伙写了一篇名为The Great Divide的里程碑式文章。在其中,Chris谈到了Brad Frost后来会称之为的“前端前端”(HTML/CSS)和“前端后端”(JavaScript)的分裂。

当然,调查受众可能并不完全代表整个行业,大约12%的受访者是通过之前回答JS状态调查找到调查的。

但至少根据我们的数据,这种分隔可能并不像曾经认为的那么明显。例如,大约22%的调查受访者使用了Next.js,当被问及他们如何在编写HTML/CSS和JavaScript/TypeScript代码之间分配时间时,59%的人说他们花费了超过一半的时间编写JavaScript——尽管调查显然针对对HTML感兴趣的人。

至少根据我的个人经验,即使你主要在前端的“前端”工作,你处理的HTML和CSS通常也会由某种JavaScript框架生成,这意味着你不禁要时不时地进入后端看看发生了什么。

看到这种趋势如何发展将是有趣的。随着HTML获得更多特性,覆盖前端两端的需要会减少吗?或者,前端后端的开发者会意识到他们毕竟不需要用JavaScript锤子敲每一个钉子?

敬请关注

如果有一种方法可以弄清楚就好了!比如,某种定期调查,可以帮助我们随着时间跟踪这些趋势……但等等,确实有!2024年版的HTML状态调查将在今年晚些时候进行,你已经可以注册我们的邮件列表,以在发生时得到通知。

与此同时,去看看完整的2023年结果,让我们知道你是否发现了你自己的见解!

分享于 2024-06-05

访问量 29

预览图片