Almost-certain CSS margin-bottom bug {1}

http://www.w3.org/Amaya/User/CSSStatus.html says:


        CSS 2:   Parsed:    Supported:
        ------------------------------
        Margins  Yes        Ok.

But this isn't entirely the case.


ALMOST-CERTAIN CSS margin-bottom BUG {1}
========================================

* Amaya does not honor "body {margin-bottom:0}" (or "body
{margin-bottom:0px}", nor the bottom-relevant aspect of "body
{margin:0}", etc.)

[See also forthcoming "Almost-certain CSS margin-bottom but {2}" for
further proof].


Test:
-----

http://www.well.com/~mech/.AmayaTest/NewTEST1.html
(also attached here, with .css file, so you don't have to manually download
that to look at it.)

This test differs from ones sent yesterday and even earlier, in being
more lean (the CSS has all unused properties removed), and being more
strict in its HTML (*all* content is contained within DIVs, and *all*
table cells have precentile height and width that add up to exactly
100% both horizontally and vertically. The stylesheet also uses 0-value
"padding" and "border" properties, to eliminate any chance that these
are in some way affecting Amaya's use of whitespace around the document
canvas.  If you remove them and test again, however, there is no
difference in the rendering.  I just include them as illustrative that
it is "margin-bottom" and not something else, such as "padding[-*]" or
"border[-*]", causing the problem.


Description of the issue:
-------------------------

There should be NO bottom margin at all on this page, yet there is a
very large one. Amaya IS properly handling the left, right and top
margins, just not the bottom one.

I feel it is important for clarity to recap the following little bit here:

At 10:30 AM +0200 2004/09/29, Irene Vatton wrote:
> I see no error in the Amaya interpretation.
> You see a big whitespace at the bottom when the html element is shorter
> than the window.

No, no...  The very reason that I put a whole heck of a lot of dummy text
in there was specifically to force the content to be taller than the
window height, requiring you to scroll down to see the bottom of the
page.  It is NOT the case that the content all fits within the
window vertically.  That whitespace has no reason to be there.  It
is as if I had "body { margin-bottom: 50px }" in my stylesheet.  (Well,
if you have a truly amazing screen resolution, then perhaps the content
DOES all fit in one screenful for you.  I should have specified that I
am working with a screen resolution of 1024x768 in these test examples.
If you do have a super-duper monitor that I couldn't possibly afford
:-) then simply double the amount of dummy text in the test HTML file
and you'll get a test file that demonstrates the problem I'm
documenting here.)

At any rate, this seems to a pretty straightforward CSS implementation
bug.  As long as the content fills the page vertically, requiring
scrolling to get to the bottom and the browser does not have to create
a bottom "filler" pseudo-margin as it does for very short content (just
like it does on the side if the content is very narrow) there should be
**ZERO** margin at the bottom of the page, period.

It's seems pretty clear that something is going on along the lines of
Amaya's default border, that it puts around things when there is no CSS
telling it not to, was forgotten about and not dealt with properly when
it came to implementing "body {margin-right:0[units]}", and thus it is
still operating when it definitely should not be.

Received on Wednesday, 29 September 2004 18:29:52 UTC