views:

30

answers:

2

I don't know what could be causing this issue, but for some reason, elements on my page (list navigation items, specifically), are disappearing in IE6. That is, from IE developer toolbar, I can see that the elements are there, and the DOM/css is correct, but the elements just aren't visible.

The odd thing is that if you set or toggle ANY css element on the list items with the IE6 toolbar, the elements appear. I also have a hover() jQuery action set on the list navigation items, and the event fires as if the elements were visible and working correctly.

What could possibly be going wrong here? I initially thought z-index could be an issue, but changing ANY attribute or css value (not necessarily z-index), causes the element to render. I should note, however, that doing this programmatically does not cause the elements to display properly, even if triggered seconds after the page load.

+2  A: 

Your page may be a victim of the dreaded IE-6 Peek-a-boo bug.

Diodeus
+1: Yeah, this and the guillotine bug alone are enough reason to deep-six IE6 as soon as your clients will let you.
Robusto
Adding "position: relative" to the floated items fixed this mysterious bug. Since the behavior only occurs in ie6, it was easy to test and fix, too! (ie6.css hacks file).
Stefan Kendall
+1  A: 

If you can garentee your users have JS enabled you could try the ie7.js which solves a number of these problems, as well as fixing some other CSS related nasties in ie6.

Mex
While this would be awesome, the site is already fully developed, and the addition of this would break everything.
Stefan Kendall
you could use conditional comments to make the ie7.js only come up in ie6, however i expect you already have a number of ie6 fixes in place.
Mex