2011-11-10 2 views
4

<button>の良い習慣は何ですか?<a>を置き換えることはできますか?

<a>タグを置き換えることはできますか?それともフォームのみを意味しますか?

+0

送信ボタンですか? – SQLMason

+0

@Mike、私は ''が単にタイプミスであったと仮定してあなたの質問を編集しました。私が間違っていた場合は、編集を元に戻してください。 –

+2

ボタンは、何らかのアクションを実行する直感的なコントロールを提供するために使用されます。ユーザーがサブミット、キャンセル、更新、「何か」をしなければならない場合、ボタンはユーザーが何をすべきかを考えさせることはなく、使用する明白なコントロールになります。それは '

答えて

4

リンクリンク何かに - 少なくともそれはすべきです!次の操作を行うために、意味的に間違っている:

<a href="#" onclick="doSomething(); return false;">Do something</a> 

これは、それがその目的のためにそこにあるように、ボタンに置​​き換えてください - それは何か、ユーザ(プログラマ)を指定するためのトリガとして機能します。したがって、<button type="button">要素の目的は明確ではない。対照的に、リンクの目的は非常に明確です - それはどこかを指すべきです!

HTMLはマークアップ言語であるため、SEOを考えていないと、あなたがしていることはそれほど重要ではありません。 <a>タグを使って同じことを達成することができます。は意味的には<div> - のように機能しますが、それは正しくありません。です。

2

実際に会社の表記規則に従うが、私の経験では、ページがリダイレクトされない場合(フォームに限定されない)に通常使用され、ユーザーが新しいページに誘導される場合は<a>となります。

+0

これも私の大会です。 – Jemaclus

+1

私は、アクションを実行するためにページにリダイレクトするボタン(またはボタンのような要素)を使うことも適切だと思います。たとえば、「登録」と入力します。一方、同じページの適切なセクションへのスクロールを含む、情報に向けて指示するには、「」(むしろリンク)を使用する必要があります。 – abhinav

1

あなたは、通常のリンク(<a href="...">)を交換する<button>タグを使用したい場合は、次のような欠点があるでしょう:

  • それだけで混乱を追加しますので、それがリンクのように見えることはありません。
  • ボタンを操作するには、JavaScriptを使用する必要があります。
  • 検索エンジンやその他のツールは、リンクをたどることができません。
  • 訪問したリンクの視覚的な表示はありません。
  • 新しいタブでリンクを開く、リンク先を調べる、URLをコピーすることはできなくなりました。

私は今はどんな利点も考えられません。

+0

」はお勧めできませんが、可能です。 – fuxia

+0

私は全くあなたに同意しますが、リンクのようなボタンをほとんどスタイルすることができます:http://jsfiddle.net/MsKWX/ – ComFreek

+0

@toscho - それは[明示的に禁止されています](https://developer.mozilla.org/en/HTML /要素/ボタン#Usage_context)。 –

1

<button>は、フォーム要素のみです。オペラでは、あなたがQはCtrl +矢印とのリンクをナビゲートし、フォーム要素はタブごとにアクセスできます。

いいえ、ある要素をもう一方の要素に置き換えてはいけません。

関連する問題