W3C home > Mailing lists > Public > public-html@w3.org > April 2011

[Bug 12413] New: Handling of <table border=0> is incompatible with the Web

From: <bugzilla@jessica.w3.org>
Date: Mon, 04 Apr 2011 10:50:25 +0000
To: public-html@w3.org
Message-ID: <bug-12413-2495@http.www.w3.org/Bugs/Public/>

           Summary: Handling of <table border=0> is incompatible with the
           Product: HTML WG
           Version: unspecified
          Platform: All
               URL: http://dev.w3.org/html5/spec/rendering.html#decohints
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P3
         Component: HTML5 spec (editor: Ian Hickson)
        AssignedTo: ian@hixie.ch
        ReportedBy: xn--mlform-iua@xn--mlform-iua.no
         QAContact: public-html-bugzilla@w3.org
                CC: mike@w3.org, public-html-wg-issue-tracking@w3.org,

(Relates to ISSUE-155/Bug 7468 - not sure if it shoudl be described as "depends

ISSUE-155 does not try to change HTML5's Rendering section w.r.t. <table>.
However, while working with ISSUE-155, it become clear that HTML5 is out of
tune with the Web even rendering wise: As <table border="0"> is frequently used
on existing layout tables,  HTML5's Rendering section is simply  incompatible
with the Web when it suggest to render any table with the @border attribute
present (even when its value is "0") with a 1px border.

This is HTML5's style rule for tables with the border attribute:

table[border] > tr > td, table[border] > tr > th,
table[border] > thead > tr > td, table[border] > thead > tr > th,
table[border] > tbody > tr > td, table[border] > tbody > tr > th,
table[border] > tfoot > tr > td, table[border] > tfoot > tr > th {
  border-width: 1px;

Effectively, this means that  <table border="0"> is to be treated as <table

Use agents: no user agents treats border="0" like that. (Tested in: Webkit
[current last version], Opera 11, Firefox 4)

History - HTML4: 
  * HTML4 says that table@border with an empty value (border="") or a
non-digital value (border="border") for compatibility reasons should be treated
like border="1". And except for a few bugs, user agents do follow HTML4: empty
@border and @border="border" *is* equal to border="1". Thus HTML5 is not
incompatible with whether user agents nor *this* part of of HTML4.
  * However, HTML4 does also say that border="0" is equal to not using the
@border attribute at all.  And not only HTML4, but also the "real Web"  (user
agents and Web authors) do treat border="0" as equal to no @border attribute.
THus, HTML5 deviates from "the Web" when it suggest to see border=0 as

Examples of layout tables in the wild which contains border="0",  easily found
via Google: 

 * http://www.ist-inc.com 
 * Any layout-table based Web page produced by Freeway  
    (http://www.softpress.com), including the 2011 release
    (Freeway has a table layout mode in addition to "normal" mode.)
 * http://wiki.services.openoffice.org/wiki/Documentation/
 * http://www.linuxquestions.org/
 * http://www.shire.net/learnwebdesign/nocss/tables1.htm
 * http://www.thewebseye.com/using-tables.htm

Tutorials of layout tables are probably few, since it is a frown-upon thing,
but those pages who explain it, often suggest user of border="0":

 * http://www.w3schools.com/html/html_layout.asp
 * http://html.cita.illinois.edu/style/layout/layout-example.php
 * http://www.quackit.com/html/tutorial/html_layouts.cfm
 * http://www.shire.net/learnwebdesign/nocss/tables1.htm
 * http://www.thewebseye.com/using-tables.htm

Proposed fix of HTML5:  Simply add one more style rule for border="0", after
the current style rule:

table[border=0] > tr > td, table[border=0] > tr > th,
table[border=0] > thead > tr > td, table[border=0] > thead > tr > th,
table[border=0] > tbody > tr > td, table[border=0] > tbody > tr > th,
table[border=0] > tfoot > tr > td, table[border=0] > tfoot > tr > th {
  border-width: 0;

Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
Received on Monday, 4 April 2011 10:50:33 UTC

This archive was generated by hypermail 2.4.0 : Saturday, 9 October 2021 18:45:35 UTC