Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
開閉UIのアニメーション設計
Search
hiro
July 04, 2026
Design
1.1k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
開閉UIのアニメーション設計
記事版:
https://zenn.dev/zozotech/articles/79c6e3cf401e55
hiro
July 04, 2026
More Decks by hiro
See All by hiro
エンジニアの成長を止めないAI活用
hiro0218
2
150
ZOZOTOWN に CSS in JS(Emotion)を導入して1年後の状況
hiro0218
7
150k
アクセシビリティを意識して、 画像の代替テキスト(alt)を 決めるときの観点
hiro0218
1
380
Next.jsで開発を始める前に知っておくと良さそうなこと
hiro0218
2
710
CSS in JS を何となく知る
hiro0218
1
660
ITCSSの良いところ
hiro0218
1
810
Other Decks in Design
See All in Design
エンジニアでも捗る デザイナー的思考入門(bitA Edit 新ver)
tinykitten
1
560
Luna's Light
shemeetscity
0
150
AI-Slopなデザインを生まないためのデザインプロセス戦略
takanorip
10
6k
いいUIとは?初心者向けに事例をもとにUIデザインを分解
yuichi_hara7
13
6.7k
デザイン組織の"次の"強みづくり
isaikaori
2
280
Bet AI Day 2026丨デザインハーネス:専門職の判断基準をコードのように運用する
layerx
PRO
4
5.3k
「惜しいデザイン」 を生み出さないための AIレビューループ
0b1tk
3
4.5k
染み出し好きの、 染み出しコントロール論
mukai_takeru
0
470
設計の進め方と 品質特性品質特性
harakeishi
0
1.3k
LP制作のための熱量ハーネス -人の熱量を、AIとの制作につなぐ-
niccy
0
1.3k
もう迷わない!“なんとなく”を卒業するフォントの選び方【村田俊英】
toshihidemurata
0
960
root COMPANY DECK / We are hiring!
root_recruit
4
30k
Featured
See All Featured
Building AI with AI
inesmontani
PRO
1
1.2k
Claude Code のすすめ
schroneko
67
230k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
How to Think Like a Performance Engineer
csswizardry
28
2.8k
The SEO identity crisis: Don't let AI make you average
varn
0
560
Everyday Curiosity
cassininazir
0
320
[SF Ruby Conf 2025] Rails X
palkan
3
1.4k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
410
Information Architects: The Missing Link in Design Systems
soysaucechin
1
1.2k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
410
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
580
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Transcript
フロントエンド技術共有会@紀尾井町 LODGE 17F 開閉UIのアニメーション設計 2026/07/03 ZOZOTOWN開発本部 開発2部 菊地宏之
2 まず、動かさない アニメーションは、足す前に削る。 動きが価値になるのは、理解を助けるときだけである。 使う頻度が高い操作ほど、動かさない 繰り返すたびに動きを待つことになり、アニメーション自体が遅延になる キーボード操作では、待ち時間を増やさない 反応・位置関係・状態変化を伝えない動きは入れない
3 開閉UIにアニメーションさせたときの違和感 開閉はときどき起きる操作であり、動かす価値はある。 ただ、タイミングを設計しないと違和感が残る。 外枠と中身が同時に動くと、読む場所が定まらない 外枠が終わるまで中身を待たせると、間延びして見える 開くときと同じ長さで閉じると、中身が長い時間残る
4 デモを見てみる Before: 外枠と中身が同時に動く After: 開くときは外枠 → 中身 / 閉じるときは中身
→ 外枠 https://codepen.io/hiro0218/full/yygorRM
5 反応、 読む場所、 完了 を分けて伝える 1 開く 外枠を先に広げる 2 閉じる
中身を先に弱める
6 Step 1 開く 操作への反応を先に返し、 読む場所を確保する 1 開く 外枠を先に広げる 2
閉じる 中身を先に弱める
7 開くときは、外枠で読む場所を先に確保する 中身を突然表示すると、ユーザーは読む場所を探す。 外枠を先に動かすと、操作への反応が返り、読む場所も先に分かる。 外枠 中身 外枠 <details> 見出し <summary>
中身本文 先に動かす 反応と読む場所を示す 短くずらす 外枠が動き出した 直後に表示する
8 開くときは、短くずらして重ねる 外枠はすぐ動かして、操作への反応を返す。 中身は外枠の動きが始まった直後に表示し、待たせずに視線を本文へ誘導する。 注意 同時に動かす 外枠 中身 視線が二つに分かれる 注意
外枠が終わってから 表示する 外枠 中身 中身が表示されるまで 間が空く 推奨 短くずらして重ねる 外枠 中身 反応は先、中身は後 ※ 読む場所と操作への反応が十分伝わるなら、同時に動かしてもよい。
9 Step 2 閉じる 中身を弱め、 完了を早く伝える 2 閉じる 中身を先に弱める 1
開く 外枠を先に広げる
10 閉じるときは、中身を先に弱める 閉じる操作では、本文を読み続けるより、閉じた状態へ戻ることを優先する。 中身を先に弱め(フェードアウトなど) 、弱め終わる前に、位置関係を追える範囲で 外枠を畳む。 1 中身を弱める → 2
重ねて外枠を畳む → 3 閉じた状態
11 閉じる時間は開くより短くする 開くときは、操作への反応をすぐ返しつつ、中身は短くずらして表示する。 閉じるときは、本文が不要になったため、完了を早く伝える。 開く 外枠 中身 閉じる 中身 外枠
図は比率の例。実装では、閉じる状態へ戻ったことを追える範囲で短くする。 開始 完了 開始 完了
12 まとめ 開閉UIのアニメーションは、 反応、読む場所、完了を分けて伝える 反応、読む場所、完了のどれも伝えない動きは入れない。 動かすなら、開くときは外枠を先に動かして反応と読む場所を伝え、 閉じるときは中身を先に弱めて完了を早く伝える。
ご清聴ありがとうございました