2

我正在尝试使用以下代码在 HTML 中创建一个两列表单。

<div id="form-wrapper">
  <form class="contact_form" action="" method="post" name="contact_form">
    <ul>
      <div id="form_left">
        <li>
          <span class="required_field"> * Denotes a required field</span>
        </li>
        <li>
          <label for="name">Name:</label>
          <input type="text" name="name" placeholder="John Doe">
        </li>
        <li>
          <label for="telephone">Contact Number:</label>
          <input type="tel" name="telephone" placeholder="(01225) 123456">
        </li>
        <li>
          <label for="email">Email:</label>
          <input type="email" name="email address" placeholder="example@example.com">
        </li>
      </div>  
      <div id="form_right">
        <li>
          <label for="message">Message:</label>
          <textarea name="message" cols="40" rows="6" >
        </li>
      </div>
    </ul>
  </form>
</div>

(http://jsfiddle.net/qrttZ/)

但由于某种原因,它在文本区域窗口内显示了我的 HTML 代码的下半部分。

我看不到任何打开的标签,所以我不确定这是为什么。

4

1 回答 1

4

HTML 不需要 XHTML 自闭合短标记这一事实,例如,<input />意味着新手很容易犯此错误,因为textarea执行非常相似的目的。只是出于一个很好的理由,它需要关闭。

<textarea name="message" cols="40" rows="6" ></textarea>

...

做到了,这

<ul>
   <div id="form_left">
      <li>

不好。<li>show follow<ul>不应该有 a <div>there。

<label for="name">Name:</label>
<input type="text" name="name" placeholder="John Doe">

如果没有id输入,那for是没有用的。

<label for="name">Name:</label>
<input type="text" name="name" id="name" placeholder="John Doe">

但是,如果您要使用在它和输入之间没有标记的标签,并且如果您不对其进行样式设置

<label>Name: <input type="text" name="name" placeholder="John Doe"></label>

输出较少

于 2013-01-05T01:59:03.053 回答