图例集中的图例标记位置是否重要?

时间:2016-05-16 06:36:29

标签: html w3c

我有一个字段集如下:

<fieldset>
    <legend>Colour</legend>
    <label><input type="radio" name="colour" value="blue"> Blue </label>
    <label><input type="radio" name="colour" value="red"> Red </label>
</fieldset>

如果我将legend标记保留在所有label标记下方,则HTML会将fieldset与之前完全相同。

<fieldset>
    <label><input type="radio" name="colour" value="blue"> Blue </label>
    <label><input type="radio" name="colour" value="red"> Red </label>
    <legend>Colour</legend>
</fieldset>

即便如此也是如此。

这里的问题是,在fieldset内的任何地方编写图例标记是否符合编程方式。

1 个答案:

答案 0 :(得分:2)

  

这里的问题是,是否在程序上是正确的,并且按照标准在fieldset内的任何地方编写图例标记。

不,不是。 legend元素(如果存在)必须fieldset元素的第一个子元素。

这是HTML5 spec.所说的:

  

4.10.16 fieldset元素
  [...]

     

<强> Content model

     

可选择legend元素,后跟flow content

HTML4.01 spec.定义了fieldset元素,如下所示:

<!ELEMENT FIELDSET - - (#PCDATA,LEGEND,(%flow;)*) -- form control group -->

其中以逗号分隔的列表定义子元素必须出现的顺序,即LEGEND必须出现在其他流(块或内联)元素之前。