문제

I'm having an issue with IE6 compatibility on a Boilerplate (and HTML5Shiv) project. I've been attempting to set the <html> element to be the same height as the <body> element but for whatever reason, it is fixed on 100% without any specific code. Each page's length is dynamic so I cannot set specific values.

I want to do this because of one primary reason -- IE6 is not displaying the scrollbar even though there is additional content below.

I've tried to set the height via the following code without any luck:

$("html").css("height", parseInt($("body").height()) + "px");

I've also attempted the following code and only the <body> element responds:

$("html, body").css("height", "2000px");

However, I have been able to add scrolling through a band-aid fix:

html, body {
    overflow-y: scroll;
}

Now back to the height problem, is this even possible via jQuery? Does IE6 simply not support what I'm after?

Thanks!

도움이 되었습니까?

해결책

I'm surprised nobody has mentioned this yet.

Forget trying to size the <html> element.

The html element isn't meant to be sized. I wouldn't bother trying to maker a smaller body either. If you need an element of a certain size, stick a div inside your body and style that.

The HTML4 specification for the html tag doesn't list style as an attribute, and it's easy to understand why.

Even in a modern browser like Chrome, trying to size the html element gives slightly odd results: http://jsfiddle.net/QdCmM/.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top