Re: "Re: [CSS21] rules="all" attribute specification and border-collapse property"

Sylvain Galineau wrote:
>> I don't really understand your point here. For [rules=all], Firefox does
>> render the borders properly, as demonstrated by GĂ©rard's testcase:
>>    http://www.gtalbot.org/BrowserBugsSection/MSIE8Bugs/TableRulesAll-
>> BCSeparate.html
> 
> I am using something far simpler than Gerard's testcase. Load the following in a couple of browsers: 
> 
> <!doctype html>
> <html>
> <body>
> <table rules="all">
> <tr><td>A</td><td>B</td></tr>
> <tr><td>C</td><td>D</td></tr>
> </table>
> </body>
> </html>
> 
> The result is identical in Firefox 3.5b4, Opera 9.64 and IE8.
> WebKit and IE7 seem to honor the author's explicit rules="all"
> in this case by setting border to 1; IE8, Firefox and Opera
> do something else that I don't find quite logical (yet) but
> they all agree. I'm trying to figure out why.

The outer border should not be set. The reason is documented in
the HTML 4.01 spec:
   http://www.w3.org/TR/html40/struct/tables.html#h-11.3.1
See also the sample table at the end of the chapter. The 'rules'
attribute is intended to control borders between cells, but not
the outer edge of the table: that is the domain of the 'frame'
attribute, which, since you have set neither 'border' nor 'frame',
defaults to 'none'.

> Now try this in the same browsers:
> 
> <!doctype html>
> <html>
> <body>
> <table rules="all" style="border-collapse:separate">
> <tr><td>A</td><td>B</td></tr>
> <tr><td>C</td><td>D</td></tr>
> </table>
> </body>
> </html>
> 
> The visible cell borders go away in IE8 and Firefox; Opera
> shows the left border of each cell. WebKit renders this
> differently than the first case even though border-collapse's
> initial value is separate so one would expect the same result.

The borders should not go away in Firefox, and I expect the fix
to bug 43178 <https://bugzilla.mozilla.org/show_bug.cgi?id=43178>
will fix this problem.

~fantasai

Received on Tuesday, 5 May 2009 01:05:16 UTC