-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathcss2022.yml
453 lines (368 loc) · 23.5 KB
/
css2022.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
locale: ro-RO
translations:
###########################################################################
# General
###########################################################################
- key: general.results.description
t: Ediția din 2022 a sondajului anual despre cele mai noi tendințe din ecosistemul CSS.
- key: general.css2022.js2022_banner
t: Sondajul State of JS 2022 este momentan deschis, așa că [îl poți completa chiar acum](https://survey.devographics.com/survey/state-of-js/2022?source=css2022)!
- key: general.css2022.results_intro
t: |
CSS-ul continuă să progreseze într-un ritm fără precedent. Nu numai că vedem noi funcționalități și proprietăți, dar chiar și fundamentele limbajului sunt readaptate și îmbunătățite datorită inovațiilor ca nesting-ul și cascadarea.
Din fericire, anul acesta am primit ajutor de la cineva aflat în fruntea tuturor acestor schimbări: membrul grupului de lucru W3C, [Lea Verou](https://lea.verou.me/), a selectat întrebările sondajului din acest an, punând în special accent pe evidențierea noilor și viitoarelor funcționalități CSS.
Mai mult, rezultatele sondajului îi vor ajuta pe furnizorii de browsere să-și prioritizeze obiectivele și să lucreze pentru o mai bună compatibilitate între browsere.
Cu toate acestea în minte, să vedem cum a evoluat CSS în 2022!
###########################################################################
# Introduction
###########################################################################
- key: introduction.css2022
t: |
<span class="first-letter">A</span>m crezut că CSS a evoluat deja într-un limbaj formidabil datorită progreselor precum Flexbox, Grid și variabilele CSS. Dar se pare că aceasta nu e nici pe departe forma sa finală.
Parent selector, nesting nativ, container queries, cascade layers… Lista de funcționalități care schimbă complet datele problemei este destul de șocantă când te gândești la asta.
Din fericire, avem cel mai bun ghid pe care l-ai putea cere pentru a te ajuta să navighezi prin aceste ape: [Lea Verou](http://lea.verou.me/) a preluat conducerea în proiectarea sondajului din acest an, iar rezultatul este un set de întrebări care cuprinde toate inovațiile cheie de care ar trebui să fii conștient.
<span class="conclusion__byline">– Sacha Greif</span>
P.S. De asemenea nou în acest an: le-am dat respondenților posibilitatea să **lase comentarii** la orice funcționalitate sau librărie menționată în sondaj! Poți găsi aceste comentarii în bara laterală a fiecărui grafic.
###########################################################################
# Tshirt
###########################################################################
- key: sections.tshirt.title
t: Tricou
- key: sections.tshirt.description
t: |
## Susține sondajul cumpărând tricoul State of CSS
Între calitatea video scăzută, casetele voluminoase și faptul că trebuia să derulezi înapoi, nu sunt prea multe
de care să-ți fie dor din era VHS. Dar un lucru care *ne* lipsește sunt imaginile minunate din anii '90 cu care
obișnuiau să fie decorate casetele VHS nescrise.
Dar acum, grație talentatului Christopher Kirk-Nielsen ne putem bucura cu toții de strălucirea retro, sărbătorind
în același timp și dragostea pentru CSS!
- key: tshirt.about
t: Despre tricou
- key: tshirt.description
t: |
Folosim un tricou dintr-un material înalt calitativ, foarte moale, care are un croi slim fit, imprimat de
partenerii noștri de la Cotton Bureau.
- key: tshirt.getit
t: Cumpără
- key: tshirt.price
t: $29 + transport
- key: tshirt.designer.heading
t: Despre designer
- key: tshirt.designer.name
t: Christopher Kirk-Nielsen
- key: tshirt.designer.bio
t: |
Originar din Franța, dar stabilit în prezent în Statele Unite, Chris nu este doar un front-end developer
extraordinar, dar și un ilustrator talentat specializat în vizualuri retro. De fapt, te încurajăm să tragi o
privire și peste [celelalte design-uri de tricou](https://chriskirknielsen.com/designs)!
###########################################################################
# Charts
###########################################################################
- key: options.features_categories.layout
aliasFor: sections.layout.title
- key: options.features_categories.shapes_graphics
aliasFor: sections.shapes_graphics.title
- key: options.features_categories.interactions
aliasFor: sections.interactions.title
- key: options.features_categories.typography
aliasFor: sections.typography.title
- key: options.features_categories.accessibility
aliasFor: sections.accessibility.title
- key: options.features_categories.other_features
aliasFor: sections.other_features.title
- key: options.features_categories.colors
aliasFor: sections.colors.title
- key: options.features_categories.selectors
aliasFor: sections.selectors.title
###########################################################################
# Awards
###########################################################################
- key: award.feature_adoption_delta_award.comment
t: |
Proprietatea Flexbox `gap` este o funcționalitate atât de utilă încât nu este deloc surprinzător
că vedem o evoluție de **{value}** în 2022
# - key: award.tool_usage_delta_award.comment
# t: No other tool comes even close to Tailwind CSS's dramatic **{value}** progression over the last year.
- key: award.most_commented_feature_award.comment
t: Cu **{value}** comentarii, nicio altă funcționalitate nu s-a apropiat măcar de feedback-ul generat de Subgrid.
- key: award.tool_satisfaction_award.comment
t: |
Dintre toate soluțiile CSS-in-JS, CSS Modules este singura care a menținut o rată
impresionantă de retenție, de **{value}**.
# - key: award.tool_interest_award.comment
# t: With a **{value}** ratio, CSS Modules again generated the most interest among CSS developers this year.
- key: award.most_write_ins_award.comment
t: |
Cu **{value}** mențiuni, browser-ul Arc a fost de departe instrumentul cel mai des menționat la întrebările deschise.
###########################################################################
# Conclusion
###########################################################################
- key: conclusion.css2022
t: |
<span class="first-line">[Anul trecut](https://2021.stateofcss.com/en-US/conclusion/), Kilian a prezis că modul în care scriem CSS e pe cale să se schimbe pentru totdeauna, iar rezultatele de anul acesta îi validează predicția.</span>
[Interop 2022](https://wpt.fyi/interop-2022) a pus browserele la aceeași masă, canalizându-le eforturile către aceleași obiective, astfel încât unele funcționalități au avansat de la faza „nu se va întâmpla niciodată" la „se întâmplă acum". Parent selectorii (`:has()`) și container queries (`@container`) sunt două mari funcționalități din această categorie. Timp de ani de zile, developerii s-au gândit că ele nu pot fi implementate din motive de performanță, dar iată că ambele s-au dovedit posibile.
Subgrid, pe de altă parte, a fost întotdeauna în planuri, doar că implica foarte multă muncă. Iar acum este suportat atât de Firefox, cât și de Safari. Este implementat activ și în Chrome, prin urmare probabil că vom observa o creștere în utilizare mult mai mare anul viitor.
Prevăd că vedetele din 2023 vor fi nesting-ul nativ și color manipulation.
Nesting-ul este momentan [principalul motiv](https://twitter.com/leaverou/status/806936438797307904) pentru care developerii încă mai folosesc pre-procesatoare, așadar să te poți baza pe el în mod nativ va fi incredibil de eliberator.
Un alt lucru pe cale să devină mult mai interesant este folosirea culorii în CSS. Există o multitudine de funcționalități implementate la nivel global chiar în timp ce parcurgi aceste rânduri. Până la finalul lui 2023, probabil ne vom putea baza pe o gamă largă de culori și pe culori device independent (`color()`, `lab()`, `lch()`, `oklab()`, `oklch()`), pe care le vom putea manipula la nivel basic prin `color-mix()`.
Toate acestea luate împreună înseamnă că 2023 va fi probabil un an foarte interesant pentru CSS. Aștept cu nerăbdare toate implementările minunate care vor urma, indiferent dacă predicțiile mele se vor adeveri sau nu. Ce moment minunat să scrii CSS!
- key: conclusion.css2022.bio
t: W3C Technical Architecture Group Member, MIT CSAIL
###########################################################################
# Picks
###########################################################################
- key: picks.my_pick
t: 'Alegerea mea pentru 2022: '
- key: picks.intro
t: Am rugat membrii comunității CSS să împărtășească „alegerea anului” din perspectiva lor
- key: picks.david_east.name
t: CSS Subgrid
- key: picks.david_east.bio
t: Avocat pentru dezvoltarea web
- key: picks.david_east.description
t: |
CSS Subgrid le permite elementelor de tip copil să moștenească proprietățile grid ale părinților săi.
În curând va fi mult mai ușor să aranjezi elemente pe aceeași linie de
grid pe întreaga pagină.
- key: picks.bramus_van_damme.name
t: Selectorul `:has()`
- key: picks.bramus_van_damme.bio
t: Chrome Developer Relations Engineer la Google
- key: picks.bramus_van_damme.description
t: |
S-ar putea să-l cunoașteți sub numele de „parent selector”, însă numele nu acoperă
decât o mică parte din ceea ce poate face în realitate.
Acest selector a schimbat în esență modul în care scriu CSS.
- key: picks.kevin_j_powell.name
t: Jhey Tompkins
- key: picks.kevin_j_powell.bio
t: CSS Evangelist
- key: picks.kevin_j_powell.description
t: |
Jhey depășește întotdeauna limitele a ceea ce putem face cu CSS
împărtășindu-ne demo-uri distractive și impresionante. Cu toate noile funcționalități care au fost aduse recent
în CSS, Jhey se află în fruntea celor care ne explică modul în care acestea funcționează.
- key: picks.samuel_kraft.name
t: Selectorul `:has()`
- key: picks.samuel_kraft.bio
t: Design Engineer
- key: picks.samuel_kraft.description
t: |
Noul selector :has() este foarte puternic și deblochează noi posibilități de stilizare.
Acest articol minunat de la Jen Simmons vine cu explicații detaliate și exemple practice.
- key: picks.josh_comeau.name
t: CSS modern
- key: picks.josh_comeau.bio
t: Software developer and educator
- key: picks.josh_comeau.description
t: |
Ecosistemul CSS s-a schimbat atât de mult în ultimii ani.
Stephanie ne arată cum putem să ne folosim de funcțiile CSS moderne
pentru a rezolva probleme vechi în moduri noi.
- key: picks.adam_argyle.name
t: Selectorul `:has()`
- key: picks.adam_argyle.bio
t: UI/CSS DevRel la Google
- key: picks.adam_argyle.description
t: |
CSS doar pentru că este și mai puternic în orchestrarea interacțiunii UI între componente.
Abia începem să înțelegem impactul pe care îl are selectorul `:has()` asupra stilizărilor noastre.
- key: picks.eric_w_bailey.name
t: “Style with Stateful, Semantic Selectors”, scris de Ben Myers
- key: picks.eric_w_bailey.bio
t: Susținător al accesibilității și CSS nerd
- key: picks.eric_w_bailey.description
t: |
Ben ne demonstrează cum utilizarea selectorilor de atribute ARIA
poate conecta simplu și puternic aspectul cu starea.
- key: picks.michelle_barker.name
t: Interop 2022
- key: picks.michelle_barker.bio
t: Scriitor și creator al blog-ului front-end CSS { In Real Life }
- key: picks.michelle_barker.description
t: |
Interop reprezintă o colaborare între toți marii furnizori de browsere,
care au convenit să-și concentreze eforturile în 15 domenii cheie —
inclusiv noi funcționalități CSS care schimbă jocul, cum sunt container queries,
cascade layers și color functions.
- key: picks.gift_egwuenu.name
t: Learn CSS
- key: picks.gift_egwuenu.bio
t: Developer Advocate at Cloudflare
- key: picks.gift_egwuenu.description
t: |
Recomandarea mea pentru oricine e interesat să învețe CSS de la zero.
De altfel, îl folosesc ca referință ori de câte ori am nevoie să caut orice proprietate CSS.
- key: picks.ahmad_shadeed.name
t: Container Queries
- key: picks.ahmad_shadeed.bio
t: Autor al [Debugging CSS](https://debuggingcss.com/), Scriu pe [ishadeed.com](http://ishadeed.com)
- key: picks.ahmad_shadeed.description
t: |
Dacă ar fi să aleg o singură recomandare pentru anul 2022, aceea ar fi container queries!
În sfârșit le avem accesibile în browsere stabile.
# - key: picks.georgedoescode.name
# t:
# - key: picks.georgedoescode.bio
# t:
# - key: picks.georgedoescode.description
# t: |
- key: picks.jen_simmons.name
t: Selectorul `:has()`
- key: picks.jen_simmons.bio
t: Web technologies evangelist la Apple
- key: picks.jen_simmons.description
t: |
Timp de două decenii, „selectorul părinte” a fost o funcționalitate foarte solicitată în CSS.
Apoi, în 2022, în mod surprinzător, pseudo-clasa :has() a devenit disponibilă, rezolvând această necesitate și multe altele.
- key: picks.sara_soueidan.name
t: Selectorul `:has()`
- key: picks.sara_soueidan.bio
t: Independent inclusive design engineer
- key: picks.sara_soueidan.description
t: |
Ne doream și așteptam de atât de mult timp CSS container queries.
La scurt timp după, `:has()` a devenit disponibil,
și am simțit că este „tot ceea ce n-am știut că ne-am dorit dintotdeauna".
- key: picks.adam_wathan.name
t: Variabile CSS goale
- key: picks.adam_wathan.bio
t: Creator al Tailwind CSS
- key: picks.adam_wathan.description
t: |
Nu multă lume știe asta, dar `--my-var: ;` este CSS complet valid
și este mai util decât crezi.
Îl folosim tot timpul în Tailwind CSS pentru a
descompune o singură proprietate CSS în mai multe clase.
# - key: picks.christianoliff.bio
# t: Front-end developer for Trimble MAPS
# - key: picks.christianoliff.description
# t: |
# One thing I've really started using and appreciating this year though is Purge CSS- an awesome tool for removing unused CSS. It can greatly reduce the size of your CSS, and its fast and easy to use.
- key: picks.kilian_valkhof.name
t: Interop 2022
- key: picks.kilian_valkhof.bio
t: Web developer și creator al Polypane
- key: picks.kilian_valkhof.description
t: |
Început în 2021 sub numele de Compat 2021, furnizorii de motoare de căutare
au început să coordoneze funcționalitățile pe care vor să le prioritizeze.
Acest lucru nu doar că rezolvă anumite diferențe care există între browsere,
dar reușește și să crească ritmul cu care noi funcționalități,
cum e @layer, sunt adoptate pe toate browserele.
# - key: picks.piccalilli_.bio
# t: Freelance designer & dev who runs piccalil.li
# - key: picks.piccalilli_.description
# t: |
# This blog is an absolute gold mine of CSS knowledge. Michelle is a CSS legend and every post or tutorial they write is heaped with useful content.
# - key: picks.piccalilli_.bio
# t: Freelance designer & dev who runs piccalil.li
# - key: picks.piccalilli_.description
# t: |
# This blog is an absolute gold mine of CSS knowledge. Michelle is a CSS legend and every post or tutorial they write is heaped with useful content.
# - key: picks.sarasoueidan.bio
# t: Independent UI/design engineer
# - key: picks.sarasoueidan.description
# t: |
# My pick is a person, namely Rachel Andrew. She taught CSS Grid to a whole generation of developers.
# - key: picks.5t3ph.bio
# t: Software Engineer @ Microsoft
# - key: picks.5t3ph.description
# t: |
# In this conference talk, Manuel Matuzovic provides thoughtfully
# crafted examples that are engaging, approachable, and actionable.
# - key: picks.hugogiraudel.bio
# t: Non-binary accessibility & diversity advocate
# - key: picks.hugogiraudel.description
# t: |
# Fela is an amazing piece of software.
# It’s pretty powerful, relatively easy to use and very performant
# - key: picks.foolip.bio
# t: Software Engineer @ Google
# - key: picks.foolip.description
# t: |
# Sergio has recently fixed lots of Flexbox in WebKit and even some in Chromium,
# notably bringing flex gap to WebKit,
# which means that soon it will be available on all modern browsers.
# - key: picks.jina.bio
# t: Design systems advocate and practitioner
# - key: picks.jina.description
# t: |
# The media query to reduce motion, which helps avoid
# triggering dizziness and discomfort.
###########################################################################
# Sponsors
###########################################################################
- key: sponsors.frontendmasters.description
t: Aprofundează-ți cunoștințele urmând cursuri moderne de inginerie front-end.
- key: sponsors.nijibox.description
t: Browserul developerilor ambițioși. Construiește cu ușurință website-uri responsive, accesibile și rapide.
- key: sponsors.renderatl.description
t: Cea mai mare conferință de tehnologie cu o categorie dedicată de Design & CSS.
- key: sponsors.google_chrome.description
t: Mulțumim echipei Google Chrome pentru susținerea muncii noastre.
###########################################################################
# FAQ/About
###########################################################################
- key: about.content
t: >
Sondajul State of CSS din 2022 a avut loc între 1 octombrie și 1 noiembrie 2022 și a colectat 14.310 răspunsuri. Sondajul a fost organizat de mine, [Sacha Greif](https://sachagreif.com/), cu ajutorul unei echipe de colaboratori și consultanți open source.
Logo-ul și tricoul au fost reutilizate de anul trecut, când au fost concepute și animate de [Christopher Kirk-Nielsen](http://chriskirknielsen.com/).
### Obiective
Acest sondaj, împreună cu sondajul [State of JavaScript](https://stateofjs.com/), a fost creat pentru a identifica tendințe viitoare din ecosistemul dezvoltării web, cu scopul de ajuta developerii să facă alegeri tehnologice.
Prin urmare, aceste sondaje se concentrează mai degrabă pe anticiparea a ceea ce va avea loc în următorii câțiva ani decât pe analizarea a ceea ce se bucură acum de succes. Din acest motiv, funcționalitățile și tehnologiile care sunt în prezent cele mai răspândite nu sunt întotdeauna incluse.
În plus, rezultate din sondaj sunt folosite de furnizorii de browsere pentru a prioritiza funcționalitățile și pentru a informa inițiative precum [Interop 2022](https://wpt.fyi/interop-2022).
### Design
Anul acesta, design-ul sondajului a fost coordonat de [Lea Verou](https://lea.verou.me/), datorită unui grant de finanțare din partea echipei Google Chrome. A fost gestionat public [pe GitHub](https://github.com/orgs/Devographics/projects/1). Toate întrebările sondajului au fost opționale.
### Audiență
Sondajul a fost accesibil online, iar respondenții nu au fost filtrați sau selectați în niciun fel. Respondenții au fost în mare parte o combinație de respondenți ai sondajelor anterioare (anunțați pe baza unei liste dedicate de email-uri) și trafic din social media.
### Finanțarea proiectului
Finanțarea acestui proiect provine dintr-o varietate de surse:
- **Vânzarea de tricouri**.
- **Link-uri sponsorizate**: link-urile către resursele recomandate din josul fiecărei pagini sunt furnizate de partenerul nostru [Frontend Masters](https://frontendmasters.com/).
- **Grafice sponsorizate**: începând de anul trecut, oricine poate sponsoriza un grafic pentru $10 sau mai mult, iar avatarul lor de Twitter va fi afișat lângă acesta.
- **Google**: în acest an, echipa [Google Chrome](https://www.google.com/chrome/) a alocat un buget pentru a o angaja pe Lea să ne ajute cu design-ul sondajului, cât și pentru a mă finanța direct ca sprijin pentru munca pe care o depun.
- **Nijibox**: [Nijibox](https://nijibox.jp/), cu sediul în Japonia, a acceptat de asemenea cu bunăvoință să-mi sponsorizeze eforturile prin care încerc să realizez aceste sondaje anuale mai sustenabile.
### Prezentare tehnică
Poți găsi o prezentare tehnică detaliată despre cum se desfășoară sondajele [aici](https://dev.to/sachagreif/how-the-state-of-js-css-surveys-are-run-4lnb). Codul nostru este [open-source](https://github.com/Devographics/Monorepo/).
- **Colectarea de date**: Aplicație [Next.js](https://nextjs.org/) care rulează pe [Vercel](https://vercel.com/).
- **Stocarea/prelucrarea datelor**: MongoDB & MongoDB Aggregations care rulează pe [MongoDB Atlas](https://cloud.mongodb.com/).
- **Data API**: Node.js GraphQL API care rulează pe [Render](https://render.com/).
- **Site-ul cu rezultate**: Aplicație [Gatsby](https://www.gatsbyjs.com/) React care rulează pe [Netlify](https://netlify.com/).
- **Vizualizarea datelor**: [Nivo](https://nivo.rocks/) React dataviz library.
- **Font**: [IBM Plex Mono](https://fonts.google.com/specimen/IBM+Plex+Mono) și [Bebas Neue](https://fonts.google.com/specimen/Bebas+Neue).
### Feedback
- [Raportează o problemă tehnică](https://github.com/Devographics/Monorepo/issues)
- [Fă o sugestie pentru anul viitor](https://github.com/Devographics/surveys/issues/66)
- [Alte probleme non-tehnice](https://github.com/Devographics/surveys/issues)
- [Alătură-te pe Discord](https://discord.gg/tuWRUWVyJs)
- key: options.other_pain_points_freeform.css_nesting
aliasFor: features.css_nesting
- key: options.other_pain_points_freeform.select
t: Select
- key: options.other_pain_points_freeform.functions
t: Funcții
- key: options.interoperability_features_freeform.at_container
aliasFor: features.at_container
- key: options.interoperability_features_freeform.flexbox_gap
aliasFor: features.flexbox_gap
- key: options.interoperability_features_freeform.css_nesting
aliasFor: features.css_nesting
- key: options.interoperability_features_freeform.viewport_units
aliasFor: features.viewport_units
- key: options.interoperability_features_freeform.ios
t: iOS
- key: options.interoperability_features_freeform.functions
t: Funcții
- key: options.interoperability_features_freeform.internet_explorer
t: Internet Explorer
- key: options.missing_features_freeform.css_nesting
aliasFor: features.css_nesting
- key: options.missing_features_freeform.select
t: Select
- key: options.missing_features_freeform.at_container
aliasFor: features.at_container
- key: options.missing_features_freeform.functions
t: Funcții
- key: options.missing_features_freeform.svg
t: SVG