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
2
CSSの歴史から選定まで
テテミートで話したCSS周りの話
tenshin_y
June 23, 2025
Tweet
Share
More Decks by tenshin_y
See All by tenshin_y
React 19.2の<Activity />を触ってみた
amkkr
0
11
怪我をして考える情報アクセシビリティ
amkkr
0
6
Next.jsのプロダクトでzodをReact Hook Formなしで使った話
amkkr
0
23
AIで下げたい参入障壁
amkkr
0
8
Other Decks in Programming
See All in Programming
Reactive Thinking with Signals and the new Resource API
manfredsteyer
PRO
0
100
複数チーム並行開発下でのコード移行アプローチ ~手動 Codemod から「生成AI 活用」への進化
andpad
0
170
CloudflareのSandbox SDKを試してみた
syumai
0
170
ソフトウェア設計の課題・原則・実践技法
masuda220
PRO
5
1k
2025 컴포즈 마법사
jisungbin
0
130
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
260
Private APIの呼び出し方
kishikawakatsumi
3
880
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
450
スタートアップを支える技術戦略と組織づくり
pospome
6
3.7k
Nitro v3
kazupon
2
310
The Missing Link in Angular's Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
130
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
180
Featured
See All Featured
Embracing the Ebb and Flow
colly
88
4.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
4 Signs Your Business is Dying
shpigford
186
22k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Building an army of robots
kneath
306
46k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Side Projects
sachag
455
43k
The Cult of Friendly URLs
andyhume
79
6.7k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
30
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
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/