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
開閉UIのアニメーション設計
Search
hiro
July 04, 2026
Design
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
700
CSS in JS を何となく知る
hiro0218
1
660
ITCSSの良いところ
hiro0218
1
810
Other Decks in Design
See All in Design
(2026 FlowCon Keynote) Sociotechnical Architecture Finding Flow
xinyao
0
120
少人数チームで_使われるプロダクトにたどり着くための_デザインハーネス.pdf
nishame
1
1.4k
図面資産×AI 眠れる資産を起こす挑戦
aonomasahiro
0
220
ボタンUIの冪等性の話をしたらVimmerに刺さっちゃった
ottatto
3
1.8k
Design dependencies
teba_eleven
0
160
1000人規模の組織でデザインハーネスを導入するための第一歩
pkshadeck
PRO
5
3.7k
猫魔法「ごろごろ」の紹介
gesho
0
130
Frontier
rwang05
0
200
Bet AI Day 2026丨デザインハーネス:専門職の判断基準をコードのように運用する
layerx
PRO
1
1.8k
PAMPHLET.pdf
mhand01
0
1.7k
「使いやすさ」だけでは、「勝てる」サービスにはならない。〜KPIとUXの分断を埋める、サービス戦略という「指針」〜
nbkouhou
3
610
広い関与の可能性に どう向き合うのか? 私たちは。|Timee MarketingDesign 2026-06-18
bebe
0
820
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
520
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
550
WENDY [Excerpt]
tessaabrams
12
39k
Marketing to machines
jonoalderson
1
5.7k
RailsConf 2023
tenderlove
30
1.5k
Tell your own story through comics
letsgokoyo
1
1.1k
Writing Fast Ruby
sferik
630
63k
Facilitating Awesome Meetings
lara
57
7.1k
Discover your Explorer Soul
emna__ayadi
2
1.3k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.3k
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のアニメーションは、 反応、読む場所、完了を分けて伝える 反応、読む場所、完了のどれも伝えない動きは入れない。 動かすなら、開くときは外枠を先に動かして反応と読む場所を伝え、 閉じるときは中身を先に弱めて完了を早く伝える。
ご清聴ありがとうございました