[HTML]SubmitボタンをLABELで関連付け??

| トラックバック(0)

HTMLを書いていてふと思いついた。


フォームの送信ボタン(type="submit")にidを付加して、labelに関連付ける。

すると、ラベルのクリックが送信ボタンのクリックとして動作するのだが・・・


例えば次のようなソース。


<form action="hoge.php" method="post">

  <label for="form_submit">送信ボタンの代わり</label>

  ...

  <input type="submit" name="submit" id="form_submit" value="送信ボタン" />

</form>


すると、「送信ボタンの代わり」というテキストをクリックするだけで、「送信ボタン」を押したことになる。サーバーのポストデータには submit=送信ボタン というデータもちゃんと含まれている。(IE9とOperaでは正しく動作しました。 )


でも、これってHTML的に正しい実装なのだろうか・・・?

もしそうなら、送信ボタンとして、<input type="submit" />, <button type="submit"></button>に続く第3の要素として利用できる気がする。

inputタグやbuttonタグでは、ブラウザがボタンを描画するため、オリジナルの送信ボタン画像などに置き換えるには若干トリッキーな方法が必要。(input type="image"は使用しない方向で...)

これに対してlabelは、ブラウザ固有の描画の影響を受けないので、DKIR法などによる画像化もしやすい。labelはcssのhover擬似クラスも効くし...。


( ̄-  ̄ ) ンー・・・使っても大丈夫なのかなぁ・・・。

トラックバック(0)

トラックバックURL: /mt/mt-tb.cgi/60