<label>中的HTML标签
我在页面中有一个表格,左边的单元格中有checkbox,右边的单元格中有描述。 “描述”包含h4标题和纯文本。 我想将整个描述( <td></td>
)作为标签。
所以每一行看起来像这样:
<tr><td><input type="checkbox" name="entiries[]" value="i1" id="i1"></td> <td><label for="i1"> <h4>Some stuff</h4>more stuff.. <h4>Some stuff</h4>more stuff.. </label> </td></tr>
但是,这不起作用,文本不像标签,不可点击。 我使用Firefox 3.6来testing它。 如果我删除<h4>
标签,它开始工作,但格式化复杂。 是否有关于防止<label>
正常工作的<h*>
标签?
块级元素( h4
所属的元素)不能在内联元素中使用,并且会导致未定义的行为。 您可以改用span
元素。
只有内联元素 (除了其他标签元素)可能出现在标签元素内。
<!ELEMENT LABEL - - (%inline;)* -(LABEL) -- form field label text -->
– http://www.w3.org/TR/html4/interact/forms.html#h-17.9.1
无论如何把标题放在那里是没有意义的。
HTML中的<label>
元素是embedded级别元素,不能包含块级元素。
这可能是你的问题。 或者,你可以把你的标签放在<h4>
:
<tr><td><input type="checkbox" name="entiries[]" value="i1" id="i1"></td> <td>< <h4><label for="i1">Some stuff</label></h4>more stuff.. <h4><label for="i1">Some stuff</label></h4>more stuff.. </label> </td></tr>