Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PostCSS
Search
Matija Marohnić
May 21, 2019
Programming
0
45
PostCSS
Matija Marohnić
May 21, 2019
Tweet
Share
More Decks by Matija Marohnić
See All by Matija Marohnić
Goodbye jsdom/happy-dom, hello Vitest Browser Mode!
silvenon
0
9
Introduction to Remix
silvenon
0
140
Cypress vs. Playwright
silvenon
0
160
Studying Strapi: an open source head headless CMS
silvenon
0
46
CSS Specificity
silvenon
0
36
Make your JavaScript projects more accessible to newcomers
silvenon
0
76
React Hooks
silvenon
0
81
CSS Custom Properties
silvenon
0
40
Maintainable Integration Testing in React
silvenon
0
45
Other Decks in Programming
See All in Programming
AIコーディングエージェント(Manus)
kondai24
0
210
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
170
脳の「省エネモード」をデバッグする ~System 1(直感)と System 2(論理)の切り替え~
panda728
PRO
0
120
Giselleで作るAI QAアシスタント 〜 Pull Requestレビューに継続的QAを
codenote
0
290
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
160
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
320
マスタデータ問題、マイクロサービスでどう解くか
kts
0
120
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
2
590
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
150
Python札幌 LT資料
t3tra
6
1k
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
210
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
2
570
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Un-Boring Meetings
codingconduct
0
160
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
73
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
400
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Raft: Consensus for Rubyists
vanstee
141
7.3k
A Tale of Four Properties
chriscoyier
162
23k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
We Have a Design System, Now What?
morganepeng
54
7.9k
Everyday Curiosity
cassininazir
0
110
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
28
Transcript
PostCSS
PostCSS • like Babel, but for CSS • what it
basically does: 1. “understands” CSS code 2. changes it using plugins
Autoprefixer .postcssrc.yml plugin configuration
Autoprefixer
Autoprefixer
Easing gradients
Easing gradients
Easing gradients
Easing gradients
Sass? Less? Stylus? • you can combine them with PostCSS
• or create a subset of their features using plugins
Nesting
Nesting
Nesting
How PostCSS works • reads CSS file content • converts
it to an abstract syntax tree (AST) • plugins perform transformations on the AST • new AST is converted back into CSS file content
CSS syntax selector property value declaration rule etc.
Abstract syntax tree (AST)
A good PostCSS plugin • follows a specification (ideally) •
makes your code better without you being aware of it • isn’t magic, doesn’t invent new syntax
Other use cases for PostCSS
stylelint • like ESLint, but for CSS • used for
detecting mistakes and discouraging patterns
stylelint-a11y
stylelint-a11y
postcss.org