タッチターゲットとは
タッチターゲットは、指で押すボタンやリンクの、反応する範囲のことです。小さすぎると、押し間違いが増えて、使いにくくなります。
このレッスンでは、押しやすい大きさと間隔、親指の届く範囲を学びます。学食の注文アプリを例に使います。
このレッスンのゴール
メモ
指で押しやすい大きさと間隔で、操作部品を決められる。
重要な言葉
| ことば | いみ | れい |
|---|---|---|
| タッチターゲット | 指で押したときに反応する範囲 | |
| 余白 | 部品のまわりの、何もない空き | padding |
| 間隔 | 隣り合う部品のあいだの距離 | gap |
| サムゾーン | 片手で持ったとき、親指が楽に届く範囲 | |
| 押し間違い | 隣の部品を押してしまうこと |
学生が入力するセルは、このプレビューでは空白です。
指はマウスの矢印より大きい
マウスの矢印は、1点を指します。指は、およそ1 cm ほどの幅で画面を押し、しかも指で押した場所は、自分の指に隠れます。
そのため、小さい部品は、狙った場所を押しにくいのです。
押せる範囲は 44 px 以上が目安
よく使われる目安は、押せる範囲を、縦も横も 44 px 以上にすることです。隣の部品との間隔も、8 px ほどは空けます。
見た目の絵が小さくても、余白を足せば、押せる範囲だけを広げられます。
例: 注文アプリの部品を判定する
| 部品 | 幅 × 高さ | 判定 |
|---|---|---|
| 注文するボタン | 280 × 48 | 大きさは十分 |
| 数量の + ボタン | 36 × 36 | 小さい |
| 取り消しのリンク | 60 × 24 | 高さが足りない |
| メニューの1行 | 320 × 56 | 大きさは十分 |
学生が入力するセルは、このプレビューでは空白です。
押せる範囲を広げる CSS
/* 絵は小さくても、押せる範囲は 44 px 以上にする */
.icon-button {
min-width: 44px;
min-height: 44px;
padding: 10px;
}
/* 並んだボタンの間は 8 px 空ける */
.buttons { display: flex; gap: 8px; }ラボの CSS の大きさを数える
ラボの style.css を読んで、部品の大きさを調べるスクリプトがあります。44 px に届かないと UNDER 44、届けば ok と出ます。
最後の行は、44 px に届かない数です。ここでは数え方を読むだけで、CSS は直しません。
44 px に届かない部品を数える
docker exec jupyter python3 steps/touch.pyここでは表示のみで、実行されません。無料アカウントを作成すると、実行ボタンで自分のラボのターミナルに入力できます。
スクリプトは何を数えるのか
スクリプトは、height、width、min-height、min-width で、px で書かれた数を探します。クラスのセレクターだけが対象です。
文字や入力欄のように、大きさを書いていない部品は、数に入りません。実際に指で押して確かめることも大切です。
親指は画面の下のほうが楽に届く
多くの人は、スマホを片手で持ち、親指で操作します。画面の下の中ほどは楽に届き、上の隅は届きにくくなります。
大画面のスマホでは、なおさらです。よく使う操作は、下のほうに置きます。
画面の場所と置くもの
| 画面の場所 | 親指 | 置くもの |
|---|---|---|
| 下 | 楽に届く | 注文するなど、よく使う操作 |
| 中ほど | 届く | メニューの一覧 |
| 上の隅 | 届きにくい | 見出し、あまり使わない設定 |
学生が入力するセルは、このプレビューでは空白です。
よくある間違い
注意
パソコンのマウスで押せたから、指でも押せると考える間違いが多いです。ブラウザのスマホ表示と、本物のスマホで、指で押して確かめてください。