This issue was fixed in Internet Explorer 7 beta 2.

Oh no, this is not a new thing. This is in CSS 1, been there since before IE 4. This effect is useful for countless situations, allowing you to specify a background image that stays still as the page scrolls. "But IE does that" I hear you say. True enough, it does. But only on the body. Elements within the body interpret this as if fixed were not specified (note: - CSS 1 core does say that browsers can treat 'fixed' as 'scroll' if they need to - this is no longer allowed in CSS 2. For something this old, it is about time background-attachment:fixed; was implemented completely in IE, especially since they do implement it on the body, but not on other elements).

Is this really such a bad thing? It sure makes lives harder, because this effect is used quite often, using alternative methods. Instead of using just one image, and one line of CSS, the image must be split into multiple small images, hogging your network connections, and taking longer to load. Each element that uses the background must have its own background image, and this must be changed as you scroll, using JavaScript to reposition the background. Urgh!

The idea is that if multiple elements use the same background, it is positioned correctly, offset the perfect amount for each element, making a complete picture shared across all of the elements. Something so simple and beautiful becomes an ugly, jumpy effect, using extra networking, extra HTML, CSS and script.

Demo: There should be a picture laid out behind the list of links. Each link should show a different piece of the picture, making up a complete picture. If you scroll the page, the picture should remain in the same place relative to the browser window.

Workaround: Use the background-attachment:fixed; workaround with a large amount of extra HTML markup, CSS and JavaScript.

Don't click this link unless you want to be banned from our site.