我在网上看到了很多示例,其中表单的布局如下:
<form>
<p><input></p>
</form>
令我惊讶的是,这也被描述在规格 http://www.w3.org/TR/html5/forms.html#the-form-element:
任何表单都以表单元素开始,其中放置
控制。大多数控件由输入元素表示,该元素由
默认提供单行文本字段。要为控件添加标签,请使用标签
使用元素;标签文本和控件本身位于
标签元素。表格的每个部分都被视为一个段落,并且是
通常使用 p 元素与其他部分分开。把这个
综上所述,以下是询问客户姓名的方式:
尽管本节是非规范的,但在我看来,这是不好的做法,而且不符合语义。我想目的是将输入放在自己的行上,但是这些元素的显示不应该使用 CSS 来控制吗?
W3C 建议以这种方式布局表单是否有原因?我错过了什么吗?
如果您以有意义(读:语义)的方式编写表单,您将希望文本流通向该元素:
<form>
<p><label for="firstName">Please enter your first name:</label><input id="firstName" type="text" /></p>
</form>
更好的方法是将您的表单视为mad-libs https://en.wikipedia.org/wiki/Mad_Libs#Format script:
<form>
<p>Hello. My <label for="firstName">name</label> is <input id="firstName" type="text" />...</p>
</form>
A p
element 并不是标记表单的唯一方法。如果要添加/编辑数据矩阵,则使用表在语义上是有效的。
在其他情况下,您可能not想要使用包装元素。这取决于什么content你想提供服务。担心一切造型after你已经把你的内容整理好了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)