- From: Matthew Raymond <mattraymond@earthlink.net>
- Date: Thu, 17 Feb 2011 11:53:07 -0500
On 2/17/2011 10:23 AM, Boris Zbarsky wrote:
> On 2/17/11 8:37 AM, Matthew Raymond wrote:
>> <label>
>> <input type='radio' name='a'>
>> <textarea></textarea>
>> </label>
>>
>> The label doesn't specify which control is the one it's labeling.
>
> But the spec does:
>
> If the for attribute is not specified, but the label element has a
> labelable form-associated element descendant, then the first such
> descendant in tree order is the label element's labeled control.
>
> Now the markup here is invalid per the spec (<label>'s content model
> says "no descendant labelable form-associated elements unless it is the
> element's labeled control"), but which control is labeled is quite
> well-defined.
I just realized that this is irrelevant because of this part of the spec:
The label element's exact default presentation and behavior, in
particular what its activation behavior might be, if anything,
should match the platform's label behavior.
That means that if clicking a text area wouldn't normally /focus/ an
option button on a particular platform (which, I believe, is all of
them), it shouldn't focus the option button. That means the Mozilla
behavior is definitely invalid.
> We all agree it's crappy markup.
>
> People do this all the time.
Never said they didn't. I'm just pointing out that an author has no
reason to believe that a specific behavior will occur based on the
semantics of the markup.
Received on Thursday, 17 February 2011 08:53:07 UTC