Version: (using KDE KDE 3.4.2) Installed from: Debian testing/unstable Packages OS: Linux There's a clean example of a styled table. It contains thead, tfoot and tbody, all with table rows. These css rules are specified: --------------------------- table { border-collapse: collapse; border-width: 2px; border-style: solid; } thead, tbody { border-width: 2px; border-style: solid; } td, th { border-width: 1px; border-style: solid; } --------------------------- Expected behaviour: You shoud see a table with 2px border around it and between parts of the table. Cells are divided by 1px border. --------------------------- Khtml bugs: 1) Tfoot element is shifted by some 2 pixels to the left. 2) Borders between two tbody elements and between thead and tbody did not collapse. They are 4px instead of 2px. --------------------------- I will append the testcase and screenshots
Created attachment 13215 [details] Page source (valid and clean)
Created attachment 13216 [details] Screenshot from konqueror (with bugs)
Created attachment 13217 [details] Expected rendering (firefox)
*** This bug has been marked as a duplicate of 108047 ***
SVN commit 595538 by carewolf: Table-sections do not have their own border in collapsed-border model. BUG: 108047 CCBUG: 115356 M +5 -0 render_table.h --- branches/KDE/3.5/kdelibs/khtml/rendering/render_table.h #595537:595538 @@ -248,6 +248,11 @@ virtual int leftmostPosition(bool includeOverflowInterior, bool includeSelf) const; virtual int highestPosition(bool includeOverflowInterior, bool includeSelf) const; + int borderLeft() const { return table()->collapseBorders() ? 0 : RenderBox::borderLeft(); } + int borderRight() const { return table()->collapseBorders() ? 0 : RenderBox::borderRight(); } + int borderTop() const { return table()->collapseBorders() ? 0 : RenderBox::borderTop(); } + int borderBottom() const { return table()->collapseBorders() ? 0 : RenderBox::borderBottom(); } + virtual void paint( PaintInfo& i, int tx, int ty); int numRows() const { return grid.size(); }