2010-07-31 54 views
4

這是對我之前的問題的繼續,這個問題與之前的一些SO問題相似。雖然所有相關問題的答案讓我想到:使用無序列表來創建表單?

我們應該使用無序列表來創建表單嗎?儘管我有不同的評論。

一個特定的博客http://green-beast.com/blog/?p=259表示使用無序列表表單是不正確的。我對開發者的問題是評論這個聲明?

+0

我希望SO不會變成*評論某人的博客文章*種類的網站。 – 2010-07-31 20:03:26

+0

@GERT對不起,如果我提出錯誤。我只是在這裏學習。我正在尋找一個答案,我GOOGLE了我的博客。但是我看到幾個人們提到使用UL的形式的建議。我只需要對此發表評論。我相信,更好地理解什麼是正確的WEB只能在SO中得到回答。 – 2010-07-31 20:07:46

回答

4

HTML爲作者提供了幾種指定信息列表的機制。所有列表必須包含一個或多個列表元素。列表可能包含:無序信息,訂購 信息和定義。 (從http://www.w3.org/TR/html4/struct/lists.html#edef-UL

我認爲列表是HTML中最重要的元素:在語義上,有太多的對象是純列表。使用uldl也可以在form中對輸入字段和標籤進行分組也是一種好的做法。

<form action="" method="post"> 
    <fieldset> 
     <p> 
      <label> 
       Full Name: 
       <input type="text" name="name" /> 
      </label> 
     </p> 
     <p> 
      <label> 
       Password: 
       <input type="password" name="password" /> 
      </label> 
     </p> 
    </fieldset> 
    <fieldset> 
     <p> 
      <label> 
       Occupation: 
       <input type="text" name="occupation" /> 
      </label> 
     </p> 
     <p> 
      <label> 
       Location: 
       <input type="text" name="location" /> 
      </label> 
     </p> 
    </fieldset> 
    <p> 
     <input type="submit" value="Submit" /> 
    </p> 
</form> 

而且有人會使用列表標記它(這看起來非常有機的在我看來):

<form action="" method="post"> 
    <fieldset> 
     <dl> 
      <dt><label for="name">Full Name:</label></dt> 
      <dd><input id="name" type="text" name="name" /></dd> 
      <!-- <dd class="error">Some errors/validation warnings</dd> --> 

      <dt><label for="password">Password:</label></dt> 
      <dd><input id="password" type="password" name="password" /></dd> 
      <!-- <dd class="note">Some notes about the field above</dd> --> 
     </dl> 
    </fieldset> 
    <fieldset> 
     <dl> 
      <dt><label for="occupation">Occupation:</label></dt> 
      <dd><input id="occupation" type="text" name="occupation" /></dd> 

      <dt><label for="location">Location:</label></dt> 
      <dd><input id="location" type="text" name="location" /></dd> 
     </dl> 
    </fieldset> 
    <p> 
     <input type="submit" value="Submit" /> 
    </p> 
</form> 

形式清單(

有人會使用段落標記的形式,因爲它們具有統一和重複的結構:

INPUT_1 
INPUT_2 
... 
INPUT_N 
+1

我傾向於使用有序列表,因爲大多數表單都有一個Tab鍵順序。我知道你沒有從列表中獲得Tab鍵順序,但從語義上講它是有道理的。 – 2010-08-01 04:08:33

0

您可以在表格,表格,清單,定義列表或一系列複雜的跨度和div中粘貼您的表單,但最終唯一重要的是您的表單是否正常工作並且人們可以使用它。

花時間在tabindex and usability而不是擔心由W3C工作組或其他人的博客定義的「語義正確的HTML編寫方式」。