[whatwg] Quirks Mode Standard

On Fri, 10 Feb 2012 08:18:40 +0100, Boris Zbarsky <bzbarsky at mit.edu> wrote:

> On 2/9/12 9:51 AM, Simon Pieters wrote:
>> It is very likely that more quirks need to be added, but as I went
>> through the list I was surprised about how many of them were *not*
>> widely implemented across browsers, and so may not be needed for Web
>> compat and can be dropped.
>
> It's worth keeping in mind that the IE9 mode relevant for quirks "web  
> compat" is the compat view quirks mode, as far as I can tell...

OK.

>> It would be useful if browser implementors could review the draft,
>> consider dropping quirks, give feedback about quirks that can't be
>> dropped, and consider aligning with other implementations for quirks
>> that are here to stay.
>
> 1)  I'm fairly certain the "Images (img elements) without alt attributes  
> sometimes display placeholder icons in quirks mode." quirk cannot be  
> dropped.  The real point of that quirk is that this markup:
>
>    <img width="100" height="100" src="404.html">
>
> which links to some non-existent image needs to result in a box of width  
> 100 and height 100 in quirks mode; not doing that breaks all the various  
> pages that (still) use "spacer gifs" pointing to bogus URIs.
>
> I believe some UAs have this behavior in all modes; in Gecko the  
> behavior is restricted to quirks mode.

The HTML specification specifies this quirk in the Rendering section.

http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#images-0


> 2)  The "fixed width specified on a table cell resets the nowrap  
> attribute." quirk seems to be implemented by everyone, effectively.  I  
> would be really surprised if it can be dropped.

IE9 in non-compat view doesn't have it.

OK, so then either we limit this to quirks mode like Opera/Gecko or we  
also do it in standards mode like WebKit/IE9 compat view.

> 3)  Likewise for the "tables with no rows/rowgroups have zero height  
> even when a height is specified" quirk.

OK.

> 4)  The CSS parsing quirks need to define behavior for shorthands.

Other than the behavior for 'font' (assuming 'font-size' is on the list),  
what's missing? (My idea was that shorthands that reference other  
properties (or value productions from other properties) in their "Value:"  
specification would automatically support unitless lengths, e.g.  
'background' where only <position> gets rewritten to use <quirklength>  
because 'background-position' is in the list but 'background-size' is not.)

> How was the list of properties for the unitless px quirk generated, by  
> the way?

I went through CSS2.1's property index manually.

> It's interesting that 'font-size' is not in the list....

I trusted https://developer.mozilla.org/en/Mozilla_Quirks_Mode_Behavior  
which says "The CSS parser interprets unitless numbers as px (except for  
font-size because that was what Netscape Navigator 4 did...". :-) Now  
added, but I'm not sure right now how to spec how the 'font' shorthand is  
handled.

> -Boris

Thanks!
-- 
Simon Pieters
Opera Software

Received on Thursday, 9 February 2012 23:57:43 UTC