Open Bug 654092 Opened 13 years ago Updated 2 years ago

Table borders: top right bottom painted 1px too thick

Categories

(Core :: Layout: Tables, defect)

2.0 Branch
x86
macOS
defect

Tracking

()

People

(Reporter: jdawiseman, Unassigned)

Details

(Whiteboard: [bugday-20110513])

Attachments

(6 files)

User-Agent:       Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Build Identifier: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:2.0.1) Gecko/20100101 Firefox/4.0.1

If making a simple table with something like 
{border-collapse: collapse;  border-style: solid;  border-color: #009900;  border-width: 4px;}
then the top, right and bottom borders are painted one pixel too thick, but the left border is painted correctly. Thus the left border looks anomalously thin. 

Attachments are a simple HTML example; a screen shot of that; and that same screen shot with the corners of the tables manually edited to highlight the error.

Reproducible: Always
Attachment #529458 - Attachment mime type: text/plain → text/html
Status: UNCONFIRMED → NEW
Component: General → Layout: Tables
Ever confirmed: true
Product: Firefox → Core
QA Contact: general → layout.tables
Whiteboard: [bugday-20110513]
This seems to work correctly on Win XP at 100% page zoom. However I get uneven borders when zooming in (above 100%) but that is probably by design and is caused by rounding.
Version: unspecified → 2.0 Branch
The whole thing is a rounding issue.  The problem is that you're asking for integer-width borders at non-integer layout positions and the collapsed table border drawing code is not very good at that: instead of antialiasing them it just draws them solid over the entire area they cover....
I understand this to be the case for my comment. Do you also mean it for the original report? I cannot reproduce the bug also with linux so the platform seems to be set correctly.
Yes, I mean it for the original report.  If I explicitly set the table width to an integer width (200px, say), the left and right borders both paint 4px wide for the 4px case; if I leave it at its intrinsic non-integer width, the right border (which is at a non-integer position, unlike the left border) ends up 5px wide.
Apologies for late follow-up. 

Specifying the table width and height does indeed change the problem, by fixing the right margin. Top and bottom are still one pixel too thick, so the corners still look wrong. 

New test case follows.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: