リンクとボタンの使い分けガイド — どちらをいつ使うべきか?
Webサイトを見ていると、ボタンとリンク(アンカー要素 <a>)が混同されて使われているケースをよく目にします。しかし、正しく使い分けるのはそれほど難しいことではありません。この記事では、基本的なガイドラインをわかりやすく解説します。
リンク(<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体験につながるのです。
-
Ruby開発に最適なIDE・エディタはどれ?人気エディタを徹底比較
開発者としての時間の大半はエディタ上で過ごすことになります。だからこそ、自分が快適に使えて、生産性を高めてくれるエディタを選ぶことがとても重要です。 この記事では、自分に合ったRuby IDE/エディタの選び方を解説します。 この決断で悩みすぎる必要はありません。まずは1つ選んで数週間使ってみて、使い心地を確かめましょう。後から乗り換えることもいつでもできます。 エディタ選びでチェックしたいポイント Ruby関連のプラグインが充実しているか オープンソースかどうか 生産性を高める標準機能があるか(コードスニペット、自動補完、邪魔にならないシンプルなデザインなど) 以下で紹介するエディタは、
-
ShadowsocksとVPN、どちらを使うべき?違いと選び方を徹底解説
インターネット検閲を回避したいと思ったとき、「VPNとShadowsocks、どちらが良いのか?」と疑問に抱いたことはありませんか。どちらも障壁を乗り越えるための強力なツールですが、それぞれに長所と短所があります。こうしたブロックの多くは、比較的シンプルな仕組みで機能しています。各ウェブサイトが持つ固有の識別子であるIPアドレスを、個別に、あるいは範囲指定で遮断するというものです。シンプルながら効果的な方法です。アクセスしたいブロック済みのIPアドレスへ直接向かうのではなく、まずブロックされていないIPアドレスに接続し、そこを経由して目的のサイトへアクセスする方が賢明です。IPアドレスのブロッ