I ran into this bug today and was intrigued. I'm not entirely sure (but confident enough to post) that this isn't an example of something that's already been discussed, but I've set up a minimal test case to dissect, etc. Here's the url:
Here's the scenario: There are two consecutive DIVs followed by an HR, the first DIV is floated to the right, the second DIV is positioned absolutely, and the HR is set to "clear: both". When viewed in Internet Explorer 5, 6, and 7 (ironically, the Macintosh version works properly), the first DIV is not visible; Opera, Safari, and Firefox all render the invisible element (and they should).
If ANY one criterion is changed (as aforementioned), everything works perfectly. Thoughts, anyone?
It can't be the peekaboo bug, I thought so too at first. The peekaboo bug is fixed in IE7, but this one isn't. The trigger for this bug is similar to the peekaboo bug, but it's actually different because this one requires an absolutely positioned element to be triggered whereas the peekaboo bug doesn't.
Wow that's weird, but what else should we expect from IE? I played around with it for a few minutes, and I noticed that if you place a <br /> before the <hr /> it takes care of the problem (in IE6 at least), but I'm not sure of how to fix it with CSS.
Or if you even change the source order so that the HR comes before #b it fixes it. I know how to resolve it, I just don't understand why it even happens.