Hi everyone

After having some discussion with and receiving comments from Bruno Fassino, 
Ingo Chao and Big John. It would now seem that the IE/Win escaping float bug 
and peekaboo bug have a common cause which is a page layout or painting feature 
in trident.

IE/Win paints a page in horizontal bands measuring 150px in height. The first 
band is situated at the top of the viewpoint and each successive band begins 
below the former at intervals of 150px down. I have referred to them as 
rendering bands but they can also be seen as painting bands.

Big John noted that he and Holly have observed these bands for many years but 
could not quite explain them. I first noticed them last year when building new 
demos out of my Guillotine bug demo. The test I did at the time were 
non-conclusive (the 150px was) so I left the off-line demos alone. About a 
month ago I was building a test case using alpha transparencies and to stop the 
slow re-flow of the pages in IE7 which I noticed as I adjusted the viewpoint or 
another re-flow trigger. Then I revisited my off-line test cases and used an 
alpha transparency for the backgrounds instead. The results were instantly 
conclusive and amazing to see.

I have this test case; please use IE7 to view in.

<http://css-class.com/test/bugs/ie/renderingbands.htm>

Which uses an alpha transparency of 2px by 2px on the container div. Please 
note that this test case will pushed your CPU to 100% usage and it may "annoy" 
you greatly in the time it takes for re-flow to occur so you can read the 
various tests that can be performed to show the rendering bands. The link test 
case

<http://css-class.com/test/bugs/ie/renderingbands2.htm>

Give one solution for the IE7 alpha transparency bug causing slow re-flow. I 
have seen one solution using a 2px by 10px image. My solution was an accidental 
find because I was actually trying to make the bug worst but the reverse 
behavior happen.

Ingo Chao showed me this test case

http://www.satzansatz.de/cssd/bizarre/bizarreborderbug.html

from is explain in this thread

http://archivist.incutio.com/viewlist/css-discuss/65177

And Bruno Fassino showed me his test case (comments in Italian).

http://www.brunildo.org/test/IE_pab_nf.html

Both of these test cases are unusual since they don't involve cases where a 
clearing div is touching a float. The later test case could be fixed by giving 
the list items a height in ems and moving the <ul> container up or down by 1px. 

Some cases of the peekaboo bug can be fixed by observing where a float and a 
clearing element is situated in respect to a rendering band and instead of 
giving the container hasLayout, another solution could be to slightly alter the 
positioning of various elements.

I have a draft article explaining both the IE/Win escaping float and peekaboo 
bugs an how they occur within these rendering bands.

<http://css-class.com/articles/explorer/floats/escaping-floats-peekaboo.htm>

Please ignore any rumors about me using this page for some extra special 
reverse testing. :-)

I am slowly adding to my draft article off-line so if anyone would like to have 
me link to live test case, please contact me off list.

When the IE team announced the list of bugs from PIE [1] that were to be fixed 
in IE7 [2], after seeing my demos you will understand why the IE/Win escaping 
float bug could never have been fixed in IE7 and also why IE7 still shows the 
peekaboo bug when particular conditions are present.

Isn't IE/Win bug behavior fascinating and weird at the same time and it takes 
the web development community to point out these strange bug behaviors to the 
IE team. We should get paid by Microsoft for the work we do here on this list 
and elsewhere. No, I will do it for free, it fun ?

Does IE8 have this same rendering issue? I hope not!


1. <http://www.positioniseverything.net/>
2. <http://blogs.msdn.com/ie/archive/2006/08/22/712830.aspx>


Alan

http://css-class.com/

______________________________________________________________________
css-discuss [EMAIL PROTECTED]
http://www.css-discuss.org/mailman/listinfo/css-d
List wiki/FAQ -- http://css-discuss.incutio.com/
List policies -- http://css-discuss.org/policies.html
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/

Reply via email to