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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hayato Yokoyama
May 31, 2025
Programming
0
220
実はすごいスピードで進化しているCSS
Hayato Yokoyama
May 31, 2025
Tweet
Share
More Decks by Hayato Yokoyama
See All by Hayato Yokoyama
AIが特別じゃなくなった時代に、作ることを楽しもう
hayato_yokoyama
0
21
AIのためのテスト戦略 〜TDDが難しいフロントエンド開発でのアプローチ〜
hayato_yokoyama
0
180
Next.js AppRouter × GraphQL 〜 夢見た理想と現実の課題 〜
hayato_yokoyama
0
160
フロントエンドテストを書きやすくするために工夫したこと
hayato_yokoyama
1
83
Other Decks in Programming
See All in Programming
OTP を自動で入力する裏技
megabitsenmzq
0
130
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
330
20260315 AWSなんもわからん🥲
chiilog
2
170
ロボットのための工場に灯りは要らない
watany
12
3.2k
Codex の「自走力」を高める
yorifuji
0
1.3k
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
3
1.9k
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
470
PHPで TLSのプロトコルを実装してみる
higaki_program
0
450
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
160
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
manfredsteyer
PRO
0
150
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
190
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
170
Featured
See All Featured
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
150
Site-Speed That Sticks
csswizardry
13
1.1k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.4k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
160
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.2k
How GitHub (no longer) Works
holman
316
150k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
790
Building AI with AI
inesmontani
PRO
1
820
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
Transcript
実はすごいスピードで進化している CSS 2025/05/30 横山 隼 Meguro.css #12
自己紹介 • ディップ株式会社(2022年新卒) • フロントエンドメインに WEBやスマホアプリの開発 横山 隼
None
None
None
None
None
いろいろ取り組んでいる会社
フロントエンドの情報共有が少ない気がした
会社で「CSSで今こんなことできます!!! 」をLTした
社内LTと同じ温度感でやるのも違うので...
実はすごいスピードで進化している CSS 2025/05/30 ディップ株式会社 横山 隼 Meguro.css #12
実はすごいスピードで進化している CSS すごいスピードで進化している CSSについて スペシャリストの皆さんにお伺いしたい 2025/05/30 ディップ株式会社 横山 隼 Meguro.css
#12
こんなノリで聞いてください
View Transition API
ご存知の方
使っている方
ぶつ切りな WEBサイトのUI/UX • スマホアプリだと「滑らかに切り替わる」 • WEBだと「パッと切り替わる」 • WEBでスマホアプリみたいな 滑らかさを表現するのは結構難しい
View Transitionの登場 • View Transition API で 簡単に「スッ」と動かせるようになった • Reactからも実験的機能で<ViewTransition>
API が登場
None
Experimental & Firefox がまだ未サポート https://developer.mozilla.org/ja/docs/Web/API/ViewTransition
コンテナクエリ
ご存知の方
使っている方
レスポンシブのこれまで レスポンシブデザインといえば、 「画面の幅が◯ px以下なら、こう表示する 」 → メディアクエリ(@media) @media screen and
(width: 600px) { body { color: red; } }
コンポーネント単位で考えるレスポンシブ • Container Queries(コンテナクエリ) 登場 • コンポーネントが置かれている親要素のサイズを見て、スタイルを適用 • レスポンシブを「画面単位」ではなく「コンポーネント単位」 で考える
@container (min-width: 700px) { .card h2 { font-size: 2em; } }
全ブラウザ対応🚀 https://caniuse.com/css-container-queries
まだまだ進化している
ダークモード対応
prefers-color-scheme • prefers-color-scheme で OS設定のライト/ダークに 連動して、切り替えられる • 2020年1月から 全ブラウザ利用可能 body
{ background-color: #efedea; } /* ダークモードのときのみ適用 */ @media (prefers-color-scheme: dark) { body { background-color: #223a2c; } } https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme
light-dark() • light-dark() 関数で 1行でライト/ダークを切り替えることもできる body { background-color: light-dark(#efedea, #223a2c);
}
light-dark() も全ブラウザ対応 https://developer.mozilla.org/ja/docs/Web/CSS/color_value/light-dark
CSS Nesting
Sass いらずでネストできる CSS Nesting • もうネイティブCSSでネストしてかける • ネストするためのSassはもういらない a {
&:hover { background-color: #eee; } &:focus { outline: 3px solid #06c; } }
全ブラウザ対応🚀 https://caniuse.com/css-nesting
Scoped Styles
CSSにスコープをつけられる @scope • CSSはグローバルで競合してしまう 問題があった → スケールしたときにバグの温床になる • 競合を回避する様々なアプローチが誕生 ◦
BEM, CSS Modules, Tailwind CSS, CSS in JS, Sass など • クラス名の衝突を気にせずにシンプルな命名が可能に @scope (.card) { p { color: red; } }
Firefoxがまだ未サポート https://developer.mozilla.org/ja/docs/Web/CSS/@scope
oklch / color-mix()
色指定の幅が広がる oklch / color-mix() • RGB(rgb(0,0,0))や16進数カラーコード(#000000) だけじゃない • より直感的に操作できる oklch
◦ okL → 明るさ(Lightness)、C → 彩度(Chroma)、H → 色相(Hue) • 色を混ぜる color-mix() oklch(40.1% 0.123 21.57) color-mix(in lch, plum 40%, pink);
全ブラウザ対応🚀 https://caniuse.com/mdn-css_types_color_oklch https://caniuse.com/mdn-css_types_color_color-mix
他にもいっぱい
まとめ • キャッチアップ漏れがちですが、地味にCSSも進化が速い • すでに使っていた機能、使ってみようと思った機能、驚いた機能など ぜひご感想やフィードバックをいただけると幸いです • CSSでこんなことできるぜ って広めて最高のサイトを作っていきましょう
ご清聴、ありがとうございました 🍡
引用 • ディップ株式会社はPHPerKaigi 2025にゴールドスポンサーで参加します! • go-json/optパッケージを公開しました • レガシーシステムにNew Relicを入れて改善を頑張った話 •
ディップで進める!データセンター卒業プロジェクト