我正在尝试使用以下代码在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代码的下半部分。
我看不到任何打开的标签,所以我不知道为什么会这样。
答案 0 :(得分:1)
HTML并不需要XHTML自我关闭短标签的事实,例如<input />
意味着新手很容易犯这个错误,因为textarea
执行的目的非常相似。只是因为一个很好的理由它需要关闭。
<textarea name="message" cols="40" rows="6" ></textarea>
...
完成了,这个
<ul>
<div id="form_left">
<li>
很糟糕。 <li>
显示关注<ul>
,那里不应该有<div>
。
另外
<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>
输出较少