見出しや数字、文章の中の語を動かして見せる方法を8種類の型に分け、AIへの指示文・動く見本・コードを載せています。見本の下で文言や時間を変えると、指示文とコードも同じものに変わります。
文字の動きはどの型を選ぶか
文字の動きは、文字そのものを1文字ずつ・1語ずつ動かす演出です。読ませたい文字を動かすので、短い見出しや数字、文章の中の1語に絞って使います。まず「出てくるときに動かすか、出たあとに飾るか」を決め、次にサイトの雰囲気で型を選びます。行ごとにのぞかせたいときはリビールの「文字が行ごとにのぞく」、スクロールに合わせて少しずつ読ませたいときはスクロールの「読み進めると文字が濃くなる」が合います。
| こんなとき | 向いている型 |
|---|---|
| 短いキャッチコピーを、文字の流れで見せたい | 1文字ずつ順番に出る |
| 話しかける調子の見出しや、画面・入力を思わせたい | タイプライターで打たれる |
| AI の返事を、届いた順に少しずつ出したい | 返事が流れ出る(ストリーミング表示)(読み込み中の動き) |
| データ・IT・ゲームなど、機械の感じを出したい | 文字が入れ替わって決まる・ずれて揺れる |
| 実績の数字を印象づけたい | 数字が数え上がる |
| 数字を、棒や円のグラフで見せたい | グラフアニメーション(SVG・図形の動き) |
| 子ども向け・イベントなど、楽しい雰囲気を出したい | 文字が波打つ |
| 説明文の中の大事な語を読んでほしい | マーカーが引かれる |
| 仕事の幅を、1行のキャッチコピーで伝えたい | 文字が回って入れ替わる |
| 大きな見出しを、行ごとにくっきり出したい | 文字が行ごとにのぞく(リビールの動き) |
| 短いメッセージを、スクロールに合わせて1行ずつ届けたい | 読み進めると文字が濃くなる(スクロールの動き) |
どの型でも守ること
- 文字をばらしたら、読み上げは全文を1回だけにする。見出しに
aria-labelで全文を付け、ばらしたspanにはaria-hidden="true"を付けます。付けないと、読み上げで1文字ずつ区切って読まれます。 - 動きを控える設定の人には、はじめから完成した文字を見せる。
@media (prefers-reduced-motion: reduce)の中と、JavaScript のmatchMediaの両方で同じ条件を見ます。見本の「動きを控える設定で見る」で、その見え方を確かめられます。 - ずっと動かし続けない。波や入れ替わりは数回で止めます。5秒を超えて動き続けるものには、止めるボタンが要ります。点滅は1秒に3回までにします。
- 短い文字に絞る。見出しは20字くらいまで、全部の文字が出終わるまでは2秒くらいまでにします。本文の段落には使いません。
- まだ出ていない文字にも場所を取っておく。文字が出るたびに行の折り返しや幅が変わると、まわりの要素までがたつきます。