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
CSSの歴史から選定まで
Search
tenshin_y
June 23, 2025
Programming
0
1
CSSの歴史から選定まで
テテミートで話したCSS周りの話
tenshin_y
June 23, 2025
Tweet
Share
More Decks by tenshin_y
See All by tenshin_y
怪我をして考える情報アクセシビリティ
amkkr
0
2
Next.jsのプロダクトでzodをReact Hook Formなしで使った話
amkkr
0
17
AIで下げたい参入障壁
amkkr
0
5
Other Decks in Programming
See All in Programming
RDoc meets YARD
okuramasafumi
4
170
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
770
概念モデル→論理モデルで気をつけていること
sunnyone
2
270
はじめてのMaterial3 Expressive
ym223
2
830
OSS開発者という働き方
andpad
5
1.7k
アセットのコンパイルについて
ojun9
0
130
Ruby Parser progress report 2025
yui_knk
1
450
Cache Me If You Can
ryunen344
2
1.5k
The Past, Present, and Future of Enterprise Java with ASF in the Middle
ivargrimstad
0
130
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
280
スケールする組織の実現に向けた インナーソース育成術 - ISGT2025
teamlab
PRO
1
110
複雑なドメインに挑む.pdf
yukisakai1225
5
1.2k
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
920
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
GitHub's CSS Performance
jonrohan
1032
460k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
113
20k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
We Have a Design System, Now What?
morganepeng
53
7.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Thoughts on Productivity
jonyablonski
70
4.8k
A designer walks into a library…
pauljervisheath
207
24k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Transcript
CSSの歴史から選定まで ~個人的思想~ 20250220 テテミート #12
自己紹介 名前 矢倉天心 SNS X: @ama_O255
CSSって? A. Webページを構成するHTMLに対して、 どう見えるかを制御し、 好みのデザインやレイアウトで文書をユーザーに提供するための言語。
CSSの歴史と課題 1 名前空間 CSSはグローバルスコープを持つため、 名前の衝突が起こりやすい。 タグ要素自体を指定できるが、大体事故を起こす。 2 メンテナンス性 上記理由により知らない間に使われていた、変更したら思ってない ところが壊れる。
しかしプログラムのようにコンパイルエラーは無い。
CSSプリプロセッサの登場
CSS Modulesの登場 1 コンポーネント指向 コンポーネントごとにスタイルを定義 Atomic Designなんかもこれが出来るようになって生まれた。 2 スコープの局所化 スタイルがコンポーネント内に限定され、名前の衝突を防ぐ。
3 保守性の向上 スタイルがコンポーネントと密接に結びつき、管理が容易。
CSS-in-JSの台頭 1 JavaScript記述 JavaScriptでスタイルを記述し、コンポーネントと一体化さ せる。 2 動的スタイリング propsやstateに応じて動的にスタイルを変化させることが可 能。 3
柔軟性 JavaScriptの機能を活用し、高度なスタイリングを実現。
CSS-in-JSたち styled-components tagにstyleを書き込まず、あらかじめベースとなるタグに対して styleを指定してコンポーネント自体を書くように定義する。 emotion jsのobject同様の書き方や、従来のCSSの書き方をサポート。 動的なスタイリングとは非常に相性が良い。
CSS Modules vs CSS-in-JS CSS Modules CSS-in-JS 記述方法 CSS, Sass
… JavaScript, CSS スコープ 自動生成による衝突回避 コンポーネント単位で適 用 動的スタイル 静的 柔軟 パフォーマンス 事前にCSSにコンパイル され高速 ランタイムに計算させる ため影響はある
個人的スタイリング方法の選定 チームのスキルセット 使うUIライブラリのサポートや方針 参考 https://techblog.zozo.com/entry/zozotown-css-in-js#fn:2 https://github.com/webpack-contrib/css-loader/issues/1050
ご清聴ありがとうございました スライド作成にgammaもありがとう https://gamma.app/