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
0
CSSの歴史から選定まで
テテミートで話したCSS周りの話
tenshin_y
June 23, 2025
Tweet
Share
More Decks by tenshin_y
See All by tenshin_y
怪我をして考える情報アクセシビリティ
amkkr
0
0
Next.jsのプロダクトでzodをReact Hook Formなしで使った話
amkkr
0
6
AIで下げたい参入障壁
amkkr
0
2
Other Decks in Programming
See All in Programming
プロダクト志向ってなんなんだろうね
righttouch
PRO
0
170
PicoRuby on Rails
makicamel
2
110
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
520
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
830
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
150
設計やレビューに悩んでいるPHPerに贈る、クリーンなオブジェクト設計の指針たち
panda_program
6
1.8k
都市をデータで見るってこういうこと PLATEAU属性情報入門
nokonoko1203
1
590
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
160
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
650
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
110
PipeCDのプラグイン化で目指すところ
warashi
1
230
Code as Context 〜 1にコードで 2にリンタ 34がなくて 5にルール? 〜
yodakeisuke
0
120
Featured
See All Featured
Making Projects Easy
brettharned
116
6.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
RailsConf 2023
tenderlove
30
1.1k
Fireside Chat
paigeccino
37
3.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
We Have a Design System, Now What?
morganepeng
53
7.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
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/