百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

2021年CSS 发展现状调查

myzbx 2025-02-27 15:59 15 浏览

前言

今年的 CSS 现状调查 新鲜出炉了。和往年一样,调查报告中,中国区贡献少的可怜,甚至还没印度的高。可能他们的传播方式主要是国外渠道,比如 Twitter 的原因吧。

以下多图预警!

State Of CSS 2021

介绍

木匠是否需要每隔几年就要学习一种新的、更好的锯木板的方法?画家们还会因为仍然在使用油画颜料而觉得自己是个骗子嘛?还是只有我们这些前端开发人员才会经历这种不断的变化呢?

随着容器查询(container queries) 和更多的新特性即将到来。前端技术仍然在快速发展,所以我们花了些时间给这些调查添加了新的动力。

在实践中证明了我们现在可以交叉引用两个数据点,例如根据经验水平划分年薪;或者按国家划分性别。您将在结果中看到其中的一些细分数据,但我们鼓励您使用我们的API或下载我们的数据来进一步研究这些数据。如果您最终制作了自己的数据可视化报告,请告诉我们!

现在,让我们看看CSS今年的发展情况!

注意: 由于时间紧迫,我们不得不将「2021 JavaScript 状态调查」推迟到2022年1月。假期过后见!

从业者统计

让我们了解真实的你

你的国家或地区

你目前居住在哪里?

你的国家和地区

语言

受访者选择了什么语言来填写调查问卷?

语言

年龄

你现在多大了?

年龄

年限

你已于当前领域工作(研究)多长时间?

年限

公司规模

所在公司规模分析

公司规模

高等教育学位

你是否取得了高等教育学位?

高等教育学位

薪资

年收入(美元)

薪资

「小蘿蔔丁」: 实名慕了 ,竟然大部分参与调查中在 $50K - $100K 之间

来源

来源

「小蘿蔔丁」: 大部分是国外站点,国内社区几乎没有,所以中国区开发者参与调研的人的少之又少。

性别

性别

种族和民族

种族和民族

残疾状况

残疾状况

「小蘿蔔丁」: 今年新加的调查项,从认知障碍、视觉障碍、听觉障碍、行动不便等方面进行了数据统计。

特性

语法,关键字,和其它语言特性。

使用情况概览

这张图根据分类划分,显示了各种特性的采用率。外圈的尺寸代表了了解这个特性的用户数量, 而内圈的尺寸代表了实际使用这个特性的用户数量。

使用情况概览

知识得分

在调查中提到的所有特性中,受访者知道多少?

知识得分

布局

使用什么布局方式进行元素布局?

CSS 网格布局 (Grid)

CSS 网格布局 (Grid)

子网格 (Subgrid)

子网格 (Subgrid)

弹性盒模型 (Flexbox)

弹性盒模型 (Flexbox)

CSS 多列布局(Multi-Column)

CSS 多列布局(Multi-Column)

CSS 书写模式 (Writing Modes)

DADqqqqqq2CSS 书写模式 (Writing Modes)

position: sticky

position: sticky

逻辑属性(Logical Properties)

逻辑属性(Logical Properties)

aspect-ratio

aspect-ratio

content-visibility

content-visibility

Gap property for flexbox

Gap property for flexbox

Break rules

Break rules

Container Queries

Container Queries

图形与图像

控制形状与元素的显示方式

CSS 形狀 (Shape)

CSS 形状(Shape)

object-fit

object-fit

clip-path

clip-path

CSS 遮罩(Masks)

CSS 遮罩(Masks)

混合模式 (Blend Modes)

混合模式 (Blend Modes)

CSS 滤镜效果

CSS 滤镜效果

backdrop-filter

backdrop-filter

color-gamut

color-gamut

perspective

perspective

Intrinsic Sizing

Intrinsic Sizing

conic-gradient()

conic-gradient()

color()

color function

accent-color

accent-color

交互

使用者如何进行页面交互?

CSS 滚动捕捉

CSS 滚动捕捉

overscroll-behavior

overscroll-behavior

overflow-anchor

overflow-anchor

touch-action

touch-action

pointer-events

pointer-events

scroll-timeline

scroll-timeline

排版

文本排版设置

font-variant-*

font-variant-*

initial-letter

initial-letter

font-variant-numeric

font-variant-numeric

font-display

font-display

line-clamp

line-clamp

Variable fonts

Variable fonts

无障碍

无障碍特性与技术

prefers-reduced-motion

prefers-reduced-motion

prefers-color-scheme

prefers-color-scheme

prefers-reduced-data

prefers-reduced-data

color-contrast()

color-contrast()

color-scheme

color-scheme

tabindex HTML attribute

tabindex HTML attribute

ARIA HTML Attributes

ARIA HTML Attributes

其他特征

其他 CSS 特征

CSS 变量(自定属性)

CSS 变量(自定属性)

特征查询「@supports」

特征查询「@supports」

CSS 约束 (Containment)

CSS 约束 (Containment)

will-change

will-change

calc()

calc()

Houdini

Houdini

CSS 比较函数 (Comparison Functions)

CSS 比较函数 (Comparison Functions)

Houdini Custom Properties

Houdini Custom Properties

::marker pseudo-element

::marker pseudo-element

技术

近 50% 的受访者乐于使用一个或多个 CSS-in-JS 库,可以肯定地说,该类别已经成功开拓了自己的小众市场。也许前端世界的两端毕竟没有那么远?

满意度对比使用率

满意度对比使用率

技术使用基数

对于每一部分,受访者对前几种技术的使用率(此处的"使用"定义为"会再次使用")。

技术使用基数

预/后处理

健壮 CSS 的处理器

排行

排行

随时间变化的体验

随时间变化的体验

积极/消极体验拆分图

积极/消极体验拆分图

其他工具

其他工具

整体幸福感

整体幸福感

CSS 框架

提供预先设置好组件和样式库。

排行

排行

随时间变化的体验

随时间变化的体验

积极/消极体验拆分图

积极/消极体验拆分图

其他工具

其他工具

整体幸福感

整体幸福感

CSS-in-JS

实现 JavaScript 编写 CSS 代码的库

排行

排行

随时间变化的体验

随时间变化的体验

积极/消极体验拆分图

积极/消极体验拆分图

其他工具

其他工具

整体幸福感

整体幸福感

其他工具

工具函数库

常用的工具函数库有哪些?

工具函数库

浏览器

常用于开发的浏览器有哪些?

浏览器

类库评估排名

在评估新类库时,您优先考虑哪些因素?结果按赢得的比赛轮数排名。

类库评价排名

环境

你于什么环境下编写 CSS 代码?

浏览器

你在哪些浏览器中进行测试?

浏览器

设备

你在什么设备上进行测试?

设备

无障碍特性

你通常会实现哪些无障碍特性?

无障碍特性

主要用 CSS 来做什么

你通常用 CSS 来开发什么项目?

主要用 CSS 来做什么

资料

你可能想要了解关于 CSS 的资料?

想法

关于 CSS 的现状调查有什么想说的?

CSS 是否易于学习

CSS 是否易于学习

CSS 的演进速度慢

CSS 的演进速度慢

应避免如 「.center、 .large-text」 等非语义、机械式类名

应避免如 「.center、 .large-text」 等非语义、机械式类名

我乐意写 CSS

我乐意写 CSS

浏览器的不兼容性

是否有哪些 CSS 特性在不同浏览器下觉得难用?

浏览器的不兼容性

CSS Pain Points

CSS Pain Points

目前觉得 CSS 缺少什么?

目前觉得 CSS 缺少什么?

总体而言,你对现有 WEB 技术满意吗?

总体而言,你对现有 WEB 技术满意吗?

总的来讲,你对现有 CSS 满意吗?

总的来讲,你对现有 CSS 满意吗?

大奖

今年的亮点

总结

一份来自 Polypane 作者 Kilian Walkhof 的总结词

多年以来,在为 Web 页面编写样式的时候,许多创新都发生在其他地方:预处理器、JavaScript 框架或编译器。可以肯定的是,CSS 本身也得到了一些受欢迎的改进,比如纵横比(aspect-ratio)或自定义属性(custom properties)。然而,我们仍然每天都在寻找各种类库和一些助手类的帮助。

但变化即将来临。核心 CSS 语言正在经历变革和更新,而我们正处于加速发展的最前沿。

Container Queries 将带入一个全新的响应式设计时代,Cascade Layers 将使我们使用框架、主题化和管理复杂的代码库变得更加容易。

当我们再往前看时,我们还可以看到 @when/else conditional 的出现,它将让我们将媒体、容器和支持查询组合到一个@规则中。

祈祷吧,2022 年我们终于看到原生 CSS 嵌套有了一些进展。我们这些使用 SassPostCSS 等工具的人已经无法想象另一种工作方式。

所有这些加在一起意味着 2022 年很可能是您编写 CSS 的方式将发生根本性变化的一年。这是一个令人难以置信的激动人心的时期,我们期待着来年所有令人惊叹的实现。

关于内容

内容搬运于:https://2021.stateofcss.com/zh-Hans/

有一部分内容是笔者自译,如果你觉得翻译不准确,也可以帮忙去翻译

建议点击阅读原文去探索更多维度下的图表展示,了解更多你感兴趣的内容,毕竟截图只能截取一部分

State Of CSS 2021 图表渲染使用的是 Nivo 类库,:https://nivo.rocks/

此文来自公众号:小蘿蔔丁

相关推荐

炫酷的计时器效果Canvas绘图与动画

-----------------------------------------华丽的分割线-----------------------------------------------------...

康托尔集合的绘制及其Python绘制(康托尔集合论的概括原则是什么)

康托尔三分集(Cantorternaryset)是数学中一个著名的分形例子,由德国数学家格奥尔格·康托尔在1883年引入。它通过不断去掉线段的中间三分之一部分,重复这个过程得到的一个分形集合。康托...

一文带你搞懂JS实现压缩图片(js 压缩图片)

作者:wuwhs转发链接:https://segmentfault.com/a/1190000023486410前言公司的移动端业务需要在用户上传图片是由前端压缩图片大小,再上传到服务器,这样可以减...

数据可视化—Echarts图表应用(数据可视化图表类型)

ECharts是一款由百度前端技术部开发的,基于Javascript的数据可视化图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。使用JavaScript实现开源的可视化库,可以流畅的...

ThreeJS中三维世界坐标转换成二维屏幕坐标

Threejs全称是“Javascript3Dlibrary”。WebGL则是openGL在浏览器上的一个实现。Threejs对WebGL进行了封装,让前端开发人员在不需要掌握很多数学知识和绘图知...

鸿蒙开源第三方件组件——加载动画库

前言基于安卓平台的加载动画库AVLoadingIndicatorView(https://github.com/81813780/AVLoadingIndicatorView),实现了鸿蒙化迁移和重构...

canvas实现下雪背景图(canvas绘制背景图)

canvas下雪背景html+css+js实现:1.定义标签:<h1>北极光之夜。</h1><divclass="bg"></...

用canvas画简单的“我的世界”人物头像

前言:花了4天半终于看完了《HeadFirstHTML5》,这本书的学习给我最大的感受就是,自己知识的浅薄,还有非常多非常棒的技术在等着我呢。[熊本表情]扶朕起来,朕还能学!H5新增标签里面最喜欢...

Manim-基础图形之点(什么叫图形基点)

制作数学演示视频时需要用到各类的集合图形,manim中内置了一些列的图形,本篇就从最简单的点讲起。点作为manim中最简单图形,也是其他所有图形的基,所有图形的绘制都是靠点来定位。manim中的点主...

一起学 WebGL:坐标系(坐标系格式)

大家好,我是前端西瓜哥,今天我们来学习WebGL。WebGL的世界坐标系是三维的。默认使用笛卡尔坐标系的右手坐标系,满足右手定则,即x轴向右,y轴向上,z轴向着观察者,原点位于画布中心。然...

漫画 欣赏 - 聖鬥士星矢 THE.LOST.CANVAS 冥王神話 24

《圣斗士星矢THELOSTCANVAS冥王神话》改编自车田正美原作的漫画《圣斗士星矢》,由车田正美原作、手代木史织作画。其外传《圣斗士星矢THELOSTCANVAS冥王神话外传》则在《...

漫画 欣赏 - 聖鬥士星矢 THE.LOST.CANVAS 冥王神話 25 - 完结篇

《圣斗士星矢THELOSTCANVAS冥王神话》改编自车田正美原作的漫画《圣斗士星矢》,由车田正美原作、手代木史织作画。其外传《圣斗士星矢THELOSTCANVAS冥王神话外传》则在《...

Eric Fischl 名画录(eric tucker画家)

艾瑞克费舍尔(EricFischl,1948——),是美国新表现主义画家,当代国际画坛一位十分活跃的人物,在国际上享有很高的知名度。作为20世纪美国第6次经济衰退时期本土第一个伟大画家艾瑞克·费舍尔...

canvas绘画板的实现(canvas画布)

新项目有一个需求:客户需要在订单确认的时候签名。第一反应就是用html的canvas实现,同事一起商量了下,canvas有三个制约:canvas必须要用鼠标,签名会很难看;手机端webapp怎么实现...

Python程序开发之简单小程序实例(9)利用Canvas绘制图形和文字

Python程序开发之简单小程序实例(9)利用Canvas绘制图形和文字一、项目功能利用Tkinter组件中的Canvas绘制图形和文字。二、项目分析要在窗体中绘制图形和文字,需先导入Tkinter组...