ちょっと良いUIおれおれAdvent Calendar 2024 – 06日目

当たり前だと思うんですが当たり前じゃないひとがいるので聞いてください。

ボタンはボタンにしましょう。

<button> を使うと諸々の操作ができるぞ

ちょうど今日見かけたんですが、まさかの <td> でした。まじか。非ウェブ系方面にこういうことするひとが多い印象があるけどなんなんでしょうね、見た目がそれっぽければ満足するみたいなの。データも整数型と /\d+/ を同一視する感じなんでしょうか。

「見た目が同じで使えるなら良いじゃないか」あたりが言い分だと思うんですが、利用可能な操作が違うので……。タブキーで移動できないし Enter キーで送信もできず、手をキーボードから外して操作する必要がありました。当たり前のことが当たり前にできないのはストレスですね。各種の支援ツールを利用している方だともっと大変でしょう。

難しいのかなあ。<select> とかの外観の変更が難しいというのはわかるけども。

<a> もやめる

わざわざ href="#" にして event.preventDefault() するんじゃなくて普通に <button> でいいじゃないですか。

リンクでは <button> をやめる

逆に移動するだけなのに <button> を使うのもよろしくないですね。Ctrl+クリックとかできないし。

リンクは <a> にしましょう。

おしまい

聞け、全ての開発者よ! ボタンはボタン、リンクはリンクだ! すべてのボタンをボタンに戻せー!

よろしくお願いします。