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.
→
斉藤賢悟
September 22, 2025
Programming
1
130
先進的なCSS関数で実現する動的スタイリング
フロントエンドカンファレンス東京2025登壇資料
斉藤賢悟
September 22, 2025
Tweet
Share
Other Decks in Programming
See All in Programming
CSC307 Lecture 09
javiergs
PRO
1
840
CSC307 Lecture 01
javiergs
PRO
0
690
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
CSC307 Lecture 08
javiergs
PRO
0
670
Raku Raku Notion 20260128
hareyakayuruyaka
0
370
FOSDEM 2026: STUNMESH-go: Building P2P WireGuard Mesh Without Self-Hosted Infrastructure
tjjh89017
0
180
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
150
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
230
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
210
izumin5210のプロポーザルのネタ探し #tskaigi_msup
izumin5210
1
140
Python’s True Superpower
hynek
0
110
AIエージェントのキホンから学ぶ「エージェンティックコーディング」実践入門
masahiro_nishimi
6
680
Featured
See All Featured
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
87
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Design in an AI World
tapps
0
150
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
How to make the Groovebox
asonas
2
1.9k
Color Theory Basics | Prateek | Gurzu
gurzu
0
200
Rails Girls Zürich Keynote
gr2m
96
14k
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.7k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
310
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
66
Transcript
先進的なCSS関数で実現する 動的スタイリング 🗂kengoー.zsh - 80x32 × ー フロントエンドカンファレンス東京2025 斉藤賢悟
氏名:斉藤賢悟 学校:北海道情報大学 経営情報学部 4年 - フロントエンドカンファレンス北海道 2024,2025 コアスタッフ - 松尾研発スタートアップARCRA Web系、AI系 自己紹介 🗂kengoー.zsh
- 80x32 × ー X: kengo20_03
最近のトレンド 🗂kengoー.zsh - 80x32 × ー 生成AI LLM ばっかり
今回のテーマ「CSS関数」 🗂kengoー.zsh - 80x32 × ー
if() 🗂kengoー.zsh - 80x32 × ー
if() 🗂kengoー.zsh - 80x32 × ー 値の中で条件分岐ができる関数 条件はmedia()/supports()/style()の3タイプ
media() supports() style() 🗂kengoー.zsh - 80x32 × ー メディアクエリと同様の判断を行います
media() supports() style() 🗂kengoー.zsh - 80x32 × ー 例)画面が広い時だけ余白を増やす
media() supports() style() 🗂kengoー.zsh - 80x32 × ー 指定したCSSをブラウザがサポートしているか否か を判断します
media() supports() style() 🗂kengoー.zsh - 80x32 × ー 例)高度な色空間が使えるならOKLCH
if() なら1つの宣言にまとめれる 🗂kengoー.zsh - 80x32 × ー
それなら@supportsや@mediaで いいのでは🤔 🗂kengoー.zsh - 80x32 × ー
media() supports() style() 🗂kengoー.zsh - 80x32 × ー その要素の状態や属性を見て、値を切り替えます
media() supports() style() 🗂kengoー.zsh - 80x32 × ー 例:状態変数だけで色を切替
progress() / scroll() 🗂kengoー.zsh - 80x32 × ー
progress() 🗂kengoー.zsh - 80x32 × ー ある値が「開始→終了」のどの辺りかを 0〜1 で返 す関数
progress(<現在値>, <開始値>, <終了値>)
progress() 🗂kengoー.zsh - 80x32 × ー 例)
scroll() 🗂kengoー.zsh - 80x32 × ー スクロール量をアニメーションの時間に変換
ページ上部のプログレスバー progress() × scroll(root) 🗂kengoー.zsh - 80x32 × ー
Chrome140 9/3にリリース 🗂kengoー.zsh - 80x32 × ー
calc()がアップデート 🗂kengoー.zsh - 80x32 × ー
calc()とは 🗂kengoー.zsh - 80x32 × ー CSS上で四則演算を行うことができる
今までは 🗂kengoー.zsh - 80x32 × ー 異なる単位同士の計算は、加算と減算のみ
Chrome 140~ 🗂kengoー.zsh - 80x32 × ー 乗算や除算でも異なる単位同士の型付き計算が可能に
実例 🗂kengoー.zsh - 80x32 × ー
ビューポート幅でアニメ速度をスケール 🗂kengoー.zsh - 80x32 × ー
実例 🗂kengoー.zsh - 80x32 × ー
最後に 🗂kengoー.zsh - 80x32 × ー
まとめ 🗂kengoー.zsh - 80x32 × ー ぶっちゃけCSS関数使わなくても実装できる 知らない技術を触ってみよう