ADR-0061: フォーカスの表示を、DADS の黄と黒の 2 重の表示から、墨の 2px の 1 重の輪にする¶
Status¶
承認
Context¶
フォーカスの表示の色と形を決め直す必要がある。
- フォーカスの色は、DADS の
@digital-go-jp/design-tokens2.1.0 の値を使うと決めている。 - DADS の表示は、要素に接する黄色の 2px の輪と、その外の黒の 4px の枠の 2 重の表示で、ダークのテーマでも替えない。
- フォーカスの表示には動きを付けず、検索の欄だけは、標準の輪の代わりに緑の筆の線を左から 1 回引くと決めている。
- 運営者は、黄と黒のフォーカスの表示が、和の感じに合わないと判断した。
- 運営者は、カタログのボタン、リンク、タブ、入力欄に、DADS の表示と、緑、藍、墨の 1 重の輪を当てた試作を、ライトとダークで比べて選んだ。
- WCAG 2.2 の達成基準 1.4.11 は、フォーカスの表示に、隣接する色とのコントラスト比 3:1 以上を求める。
- 達成基準 2.4.13(AAA)は、2px 以上の太さと、フォーカスの前後の同じ画素のコントラスト比 3:1 以上を求める。
Decision¶
フォーカスの表示を、要素から 2px 離して引く、墨の 2px の 1 重の輪にする。
コードを動かす画面の、詰めたペイン、木の行の中の名前の欄、分割の幅を変える SplitPane の仕切りに引く輪の位置と、そのユーティリティは、ADR-0066 が決める。
- 輪の色は、文字と同じ墨にする。
- ライトは
sumi-900、ダークはsumi-25を指すセマンティックトークンfocusを 1 つ置き、テーマごとに替える。 - 墨は、差し色の役割(主の色、リンク、情報、現在地、エラー)のどれとも重ならず、罫で区切る版面の色だからである。
- ライトは
- 太さは 2px にする。
- ヘッダーの下と表の頭の墨の罫と同じ太さで、輪で囲んだ要素が重く見えないためである。
- 2.4.13 の下限の 2px を満たす。
- 表示は、テーマ変数のファイルの
focus-ringのユーティリティ 1 つで書く。- 黄と黒のプリミティブトークンは消す。
- 検索の欄は、例外のまま、緑の筆の線を引く。
- 墨の下罫だけで組んだ欄を輪で囲むと、罫の版面が崩れるためである。
- 輪と、輪を引く要素の背景になる面(
surface、surface-subtle、surface-raised、primary-surface、code-surface)の組を、コントラストのチェックに入れる。
Verification¶
使い捨ての試作で、カタログの実物のコンポーネントに案を当て、Chromium で測った。
- 墨の輪と面のコントラスト比は、
surfaceでライト 17.25:1、ダーク 16.28:1、surface-subtleでライト 15.94:1、ダーク 14.86:1 だった。 - 緑の輪は、主のボタンの面と同じ色(1.00:1)で、2px の隙間でしかボタンと区別できなかった。
- 藍の輪は、外部のリンクの文字と同じ色だった。
- DADS の黄と黒の 2 重の表示は、ライトでは黒の枠だけが、ダークでは黄色の輪だけが、面に対して 3:1 を超えた。
- Safari と Firefox での確認はしていない。
Considered Options¶
| 選択肢 | 強み | 弱み |
|---|---|---|
| 採用: 墨の 2px の 1 重の輪 | 全ての面でコントラスト比が最も高い。差し色の役割と重ならない。罫で区切る版面の色である | 墨の罫と同じ色なので、輪の形でしかフォーカスと分からない。ダークでは白い枠に見える。1 重の輪は、輪と明るさの近い面では見えにくい |
| 墨の 3px の 1 重の輪 | 2px より見つけやすい | 入力欄やボタンが、太い墨の枠の箱に見える |
| 緑(主の色)の 1 重の輪 | 検索の欄の緑の筆の線と色がそろい、フォーカスの色が 1 つになる | 主のボタンの面と同じ色で、ボタンの枠が太くなったように見える。リンクと選んだタブの罫と同じ色である |
| 藍の 1 重の輪 | 主の色と色相が分かれ、フォーカスだけの色になる | 藍は外部のリンクと情報の色である。ダークでは主のボタンの面との差が明るさに出ない |
| DADS の黄と黒の 2 重の表示のまま | どの面の上でも、どちらかの輪が見える。DADS に沿う | 黄と黒が、和の感じに合わない |
Consequences¶
Positive¶
- フォーカスの表示の色が、和の感じの版面に合う。
- 輪の色がテーマごとに替わり、どちらのテーマでも輪の全体が面に対して 3:1 を超える。
Negative¶
- DADS のフォーカスの表示から外れる。
- DADS の更新を、フォーカスの表示には取り込まない。
- 1 重の輪なので、墨と明るさの近い面の上に操作できる要素を置くと、輪が見えにくい。
- 輪が外へ広がる幅が 6px から 4px に変わる。
- 文中のリンクの左右の 6px の余白は変えない。