http://validator.w3.org/check でページをチェックしているときになぜこのエラーが発生し続けるのかわかりません。エラーは次のとおりです。
Line 235, Column 84: The for attribute of the label element must refer to a form control.
… <label for="name" style="line-height:24px;">Your Name</label><br>
これが私の実際のコードです
<div>
<label for="name" style="line-height:24px;">Your Name</label><br>
<input class="css_form_namefield TooltipIstok " type="text" name="name" value="" style="width: 554px;" maxlength="50" >
</div>
Label要素でfor属性を使用する場合は、フォームのinput要素のIDと一致する必要があります。
すなわち
<label for="field-id" style="line-height:24px;">Your Name</label><br>
<input type="text" id="field-id">
このページは、詳細情報に役立つ場合があります。 http://www.w3.org/TR/WCAG-TECHS/H44.html
定義により、HTML 4.01の用語を使用するには、 for
属性 の値が「別の」フォームコントロールのid
属性の値と一致する必要があります。 Controls はinput
、textarea
、button
、select
、またはobject
要素によって作成されるので、 「別の」を「a」と読みます。 HTML5はこれを多少異なる方法で配置し、属性が labelable element を参照する必要があることを指定します。
エラーメッセージから、HTML5に対して検証しているようです。そのため、適用されるルールは、for
属性がbutton
、input
を参照する必要があることです( type=hidden
)、keygen
、meter
、output
、progress
、select
、またはtextarea
要素。私の推測では、id
属性がその役割を果たし得ると誤って想定して、name
属性を忘れただけだと思います。