Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Welcome CSS LV5
Search
Afonso Pacifer
August 29, 2020
Programming
0
170
Welcome CSS LV5
Afonso Pacifer
August 29, 2020
Tweet
Share
More Decks by Afonso Pacifer
See All by Afonso Pacifer
Recriando o React do Zero em 10 minutos
afonsopacifer
0
14
O CAMINHO PARA SE TORNAR UM(A) MESTRE(A) DOS ESTILOS COM CSS LV 5.
afonsopacifer
0
87
HTML 5.3: O que existe além de a11y e SEO?
afonsopacifer
0
71
State of JS 2022
afonsopacifer
0
170
No pain no gain
afonsopacifer
0
140
A liberdade vem do Ether
afonsopacifer
0
34
Front-End 101: A resposta sobre “estudar a base”
afonsopacifer
4
540
PRPL pattern na prática com React
afonsopacifer
1
260
Style Strategies in Vue.js
afonsopacifer
2
130
Other Decks in Programming
See All in Programming
ONE WEDGE_Company_Information
1wedge
0
180
生成 AI の中身を覗いてみよう〜基礎から医療現場での応用まで〜
soh9834
2
770
ドメイン・ファーストで考える問題解決に役立つモデル設計 / Domain First Model Design
suzushin54
1
1.4k
WinUI 3デモ - "CommunityToolkit.Mvvm"NuGetパッケージ編
andrewkeepcoding
0
140
フロントエンドパフォーマンス 入門
shouta2
7
1.5k
オブジェクトしこう
okuramasafumi
2
130
Compiling Python to WebAssembly with py2wasm
syrusakbary
0
140
せっかくモデル図描くのなら、嬉しいことが多い方がいいよね!
kuboaki
1
1.8k
設計の知識と技能で駆動するソフトウェア開発
masuda220
PRO
18
11k
Some Quick Ideas To Improve Your Tests ( #jassttokyo )
teyamagu
PRO
2
2.3k
Open Source Swiftc Workshop
kitasuke
1
290
上手な探索的テストとその上達方法について
matsu802
4
660
Featured
See All Featured
How GitHub Uses GitHub to Build GitHub
holman
467
290k
Bash Introduction
62gerente
604
210k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
19
1.6k
Writing Fast Ruby
sferik
619
59k
BBQ
matthewcrist
78
8.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
343
19k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
19
1.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
11
1.4k
Practical Orchestrator
shlominoach
180
9.7k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
242
20k
Building Your Own Lightsaber
phodgson
97
5.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
8
8.2k
Transcript
...
- My English is terrible Warnings: - My first talk
in English - Puedes preguntar en español
@afonsopacifer Bienvenida CSS Lv5.
Afonso Pacifer. Principal JS developer at @valleweb Host at @frontendbr
Co-organizer at @meetupcss Former CSS evangelist @afonsopacifer afonsopacifer.github.io
Brazil Community.
None
None
None
None
CSS LV5?
What? What happens To CSS4?
WTF! CSS 5?
Lek,
Back to base
World Wide Web Consortium https://www.w3.org/
Write Specs Implement Features
CSS 4 ? CSS 5 ?
Understanding the past to explain the future
CSS short timeline
1994 Håkon Wium Lie starts the first CSS draft. The
first presentation about CSS happened in Chicago at the WWW Conference. Bert Boss interested in the idea started helping the project.
1995 This year, In the same conference, the W3C became
interested. The first e-mail list about CSS was created.
1996 W3C released the CSS 1.0 specification. Internet Explorer 3
as the first browser to support CSS, followed by Netscape 4 and Opera 3.5.
1997 The CSS Working Group It was officially created.
1998 W3C released the CSS 2.0 specification. Erick Mayer release
the developer suit for Opera. This project improving the browser CSS support.
2011 W3C released the CSS 2.1.
2014 W3C released the HTML 5 bundle. The CSS3 leaves
the draft status to become a recommendation.
1994 1995 1996 1997 1998 2011 2014 2020 CSS 2.0
CSS 2.1
The solution?
CSS 3
Much more than animations, flexbox, borders, etc…
CSS 2.1 CSS 3 All CSS Specs Version 2.1 Flex
box Selectors Grid Layout Custom properties Media queries LV 1 LV 1 LV 2 LV 4 LV 5 Modules Monolith
A global CSS 4 or CSS 5 Don't make sense
What happens inside a level?
Working Draft WD Canditate Recommendation CR Proposed Recommendation PR Recommendation
REC
My Tips and Tricks
Follow the Editors
Help the Editors
Study the Specs
Example!
CSS Color Module Level 5 https://www.w3.org/TR/css-color-5/
None
Dynamically adjust color without preprocessors
color-mix() Take two colors and mixing them
mix-color( ) #ff0000 #00ff2f
Browsers Support?
None
Why?
Lets understand
rgb(255, 0, 0) #ff0000 lch(54, 106, 40) lightness: 54.2917% chroma:
106.8390 hue: 40.8526
https://lea.verou.me/2020/04/lch-colors-in-css-what-why-and-how/
mix-color(#ff0000 #ffff00 ) 60% 40% 60%
How mix-color() work
60% 40% + Mixed lightness lch(C1_L, C1_C, C1_H) lch(C2_L, C2_C,
C2_H) C1_L * 60/100 + C2_L * 40/100 = X Mixed chroma C1_C * 60/100 + C2_C * 40/100 = Y Mixed hue C1_H * 60/100 + C2_H * 40/100 = z Result: lch(x, y, z)
None
CSS is easy to learn But its very very hard
to become an expert “
color-contrast() Select the better contrast following the WCAG
None
color-contrast( ) contrast ratio: 1.6 contrast ratio: 3.99 contrast ratio:
1.07 white #ccc, red, yellow
Better A11y .button { color :color-contrast(var(—bg) var(--theme-a), var(—theme-b)); } Custom
Design Systems Easy dark mode
Browsers Support?
None
None
And many others Cool functions
CSS Colors lv5 Is the future
Polyfill?
The Dark Side of Polyfilling CSS https://philipwalton.com/articles/the-dark-side-of-polyfilling-css/
My new side project: css-color-polyfill
CSS Houdini https://developer.mozilla.org/en-US/docs/Web/Houdini
Final tips!
https://14habits.com/
Empieza a hacer lo que no sabes, y la evolución
será solo una consecuencia - Afonso Pacifer “
@afonsopacifer afonsopacifer.github.io Gracias.