HTML
 Computer >> コンピューター >  >> プログラミング >> HTML

リンクとボタンの使い分けガイド — どちらをいつ使うべきか?

Webサイトを見ていると、ボタンとリンク(アンカー要素 <a>)が混同されて使われているケースをよく目にします。しかし、正しく使い分けるのはそれほど難しいことではありません。この記事では、基本的なガイドラインをわかりやすく解説します。

ユーザーに以下のような「移動」をさせたい場合は、リンク(<a href="/go-here">リンク</a>)を使用します。

  • 同じページ内の別セクションへ移動させる
  • 自サイト内の別ページへ移動させる
  • 外部サイト(別ドメイン)へ移動させる

つまり、リンクとは「ナビゲーション」のための要素です。URLを持つ場所へユーザーを案内する役割を担います。

ボタン(<button>)を使うべき場面

クリックによってJavaScriptで動作するアクションを起こしたい場合は、ボタン(<button type="button">ボタン</button>)を使用します。例えば以下のような場面です。

  • スライドインメニューの開閉を切り替える
  • ポップアップのモーダルやダイアログを開く

<button>を使うべき好例として、当サイトのヘッダーにある月/太陽アイコンが挙げられます。クリックすると、カラーテーマがライトモードからダークモードへ切り替わります。これはページ遷移ではなく、画面上の状態を変えるアクションだからです。

フォームの送信はどうする?

お問い合わせフォームなど、ユーザーにフォームを送信してもらいたい場合は、submitタイプのinput要素を使用します。

<input type="submit" value="送信" />

なお、<button type="submit">もフォーム送信に利用できます。デザインの自由度が高いので、スタイリングしやすいこちらを選ぶケースも増えています。

アクセシビリティの観点でも重要

リンクとボタンの使い分けは、アクセシビリティの面でも大きな意味を持ちます。スクリーンリーダーの利用者やキーボード操作のユーザーにとって、両者はまったく異なるものとして認識されるためです。

  • リンク:Enterキーで押下し、「移動する」ことが伝えられる
  • ボタン:Enterキーやスペースキーで押下し、「アクションを実行する」ことが伝えられる

見た目をボタン風にした<a>や、逆にリンク風に見せた<div onclick="...">といった実装は、支援技術の利用者に混乱をもたらします。正しいHTML要素を選ぶことは、SEOだけでなく、すべてのユーザーにとって快適なWeb体験につながるのです。

  1. Ruby開発に最適なIDE・エディタはどれ?人気エディタを徹底比較

    開発者としての時間の大半はエディタ上で過ごすことになります。だからこそ、自分が快適に使えて、生産性を高めてくれるエディタを選ぶことがとても重要です。 この記事では、自分に合ったRuby IDE/エディタの選び方を解説します。 この決断で悩みすぎる必要はありません。まずは1つ選んで数週間使ってみて、使い心地を確かめましょう。後から乗り換えることもいつでもできます。 エディタ選びでチェックしたいポイント Ruby関連のプラグインが充実しているか オープンソースかどうか 生産性を高める標準機能があるか(コードスニペット、自動補完、邪魔にならないシンプルなデザインなど) 以下で紹介するエディタは、

  2. ShadowsocksとVPN、どちらを使うべき?違いと選び方を徹底解説

    インターネット検閲を回避したいと思ったとき、「VPNとShadowsocks、どちらが良いのか?」と疑問に抱いたことはありませんか。どちらも障壁を乗り越えるための強力なツールですが、それぞれに長所と短所があります。こうしたブロックの多くは、比較的シンプルな仕組みで機能しています。各ウェブサイトが持つ固有の識別子であるIPアドレスを、個別に、あるいは範囲指定で遮断するというものです。シンプルながら効果的な方法です。アクセスしたいブロック済みのIPアドレスへ直接向かうのではなく、まずブロックされていないIPアドレスに接続し、そこを経由して目的のサイトへアクセスする方が賢明です。IPアドレスのブロッ