分類
Javascript

lable標籤包住的問題

在現在使用手機瀏覽網頁愈來愈普遍的時候, 著重對手機網頁的效果也愈來愈重要.

最近測試到一個問題, 被 label 包起來的多個 input box 時, 會發生即時點到後第二或第三個 input box 也會 focus 到第一個 input box 的問題. 如下面的 html

<label>
  <input type=text size="3">-
  <input type=text size="3">-
  <input type=text size="3">
</label>

其實這個問題的原因很單純, 因為 label 是用來強化使用者輸入便利性的標籤, 拿來包多個 input 會發生只會指向第一個 input 是因為原始的設計導致, 目前測試在桌機的 firefox 、android 原生瀏覽器、android chrome瀏覽器、iphone/ipad safari瀏覽器, 都會有這樣的現象, 但桌機的chrome, 桌機的IE11則不會, 原因可能和取得物件焦點的順序有關.

無論如何, 包多個 input 在一個 label 不是一個正確的作法, 要避免這個狀況, 就是不在把多個 input 放在一個 label 中即可.

測試網頁 http://sample.diary.tw/35/label.htm

html label標籤的用法, 可以參考這裡: http://www.w3schools.com/tags/tag_label.asp

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *