[解決済み] Difference between <input type='submit' /> and <button type='submit'>text</button>
Question
There are many legends about them. I want to know the truth. What are the differences between the two following examples?
-
<input type='submit' value='text' />
-
<button type='submit'>text</button>
How to solved?
Not sure where you get your legends from but:
Submit button with
<button>
As with:
<button type="submit">(html content)</button>
IE6ではこのボタンのタグの間にあるすべてのテキストが送信され、他のブラウザでは値のみが送信されます。使用方法
<button>
を使えば、ボタンのデザインに対してより自由なレイアウトが可能になります。あらゆる意味で、当初は優れていると思われましたが、様々なブラウザの癖によって、使いにくい時もあります。
あなたの例では、IE6 は
text
をサーバーに送信しますが、他のほとんどのブラウザは何も送信しません。クロスブラウザに対応させるためには
<button type="submit" value="text">text</button>
. HTMLを追加すると、サーバー側で何が受信されるかがかなり厄介になるからです。その代わり、もし余分な値を送らなければならないなら、hiddenフィールドを使いましょう。
ボタン
<input>
と同じです。
<input type="button" />
デフォルトでは、これはほとんど何もしません。フォームを送信することもありません。ボタンにテキストを配置し、CSS でサイズと境界線を指定することだけが可能です。元々の(そして現在の)目的は、フォームをサーバーに送信することなくスクリプトを実行することです。
通常の送信ボタンで
<input>
と同様です。
<input type="submit" />
前者と同様ですが、実際に周囲のフォームを送信します。
画像送信ボタンに
<input>
と同様です。
<input type="image" />
前者(submit)と同じく、フォームを送信しますが、任意の画像を使用することができます。以前は、フォームの送信が必要なときにボタンとして画像を使用する方法として、これが好まれていました。よりコントロールするために
<button>
が使われるようになりました。また、これは
サーバーサイドイメージマップ
が、最近はめっきり少なくなりましたね。このような場合
usemap
-属性と(その属性があってもなくても)、ブラウザはマウスポインタのX/Y座標をサーバーに送信します(より正確には、クリックした瞬間のボタン内部のマウスポインタの位置)。これらの余計なものを無視すれば、画像に見せかけた送信ボタン以外の何物でもありません。
ブラウザによって微妙な違いがありますが、value-属性は
<button>
タグを使用します。
関連
-
[解決済み] HTMLのテーブルからボーダーを完全に削除する方法
-
[解決済み] どのラジオボタンが選択されているかをjQueryで知るにはどうしたらよいですか?
-
[解決済み] CSSでテキストを垂直方向にセンタリングするには?[重複しています]
-
[解決済み] <button> vs. <input type="button" />. Which to use?
-
[解決済み] How do I style a <select> dropdown with only CSS?
-
[解決済み] input type="file "ボタンのスタイリング
-
[解決済み] jQueryの送信ボタンの無効化・有効化
-
[解決済み] JQueryを使って<input type="text">の変更をすべて(即座に)検出する。
-
[解決済み】jQueryを使用して入力テキストに値を設定する方法
-
[解決済み】送信ボタンがないのにEnterキーを押してフォームを送信する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 横型リストアイテム
-
[解決済み] slackのチームIDやチャンネルIDを調べる最も簡単な方法は何ですか?
-
[解決済み] CSSでcellpaddingとcellspacingを設定する?
-
[解決済み] リンクのように動作するHTMLボタンを作成する方法
-
[解決済み] <button> vs. <input type="button" />. Which to use?
-
[解決済み] 特定のクラスや属性を持たない要素を選択するCSSセレクタは書けますか?
-
[解決済み] 検索エンジンはAngularJSアプリケーションをどのように扱っているのか?
-
[解決済み] Do I use <img>, <object>, or <embed> for SVG files?
-
[解決済み】<input type='button' />と<input type='submit' />の違いについて。
-
[解決済み】Font-awesome、入力タイプ'submit'