Found out what the main problem was for me: in FF, setting a hight
worked only part of the time. min-height also had to be set, which has
solved the problem.
I'm using a strict doctype, but setting height to 100% doesn't work.
On Apr 18, 2:00 pm, Ben Schwarz [EMAIL PROTECTED] wrote:
I believe that you may have to set html, body { width: 100%; height:
100%; } in your CSS and use a strict doctype to achieve this in a
reliable manner. I faintly remember doing something similar recently.
You may find that the 'over sizing' is cause by a margin on another
element or body.
--
On Apr 18, 7:06 pm, Phillip B Oldham [EMAIL PROTECTED] wrote:
By the looks of things it puts a div over the full size of the
document, rather than expand a div to the size of the viewport.
On Apr 18, 9:17 am, Ariel Jakobovits [EMAIL PROTECTED] wrote:
doesn't the thickbox take up the viewport? look at that
- Original Message
From: Phillip B Oldham [EMAIL PROTECTED]
To: jquery-en@googlegroups.com
Sent: Wednesday, April 18, 2007 1:15:04 AM
Subject: [jQuery] Make a div expand to take up the rest of the viewport?
Hi all
I've been playing about trying to get an effect similar to Google
Calendar, where a div starts at a fixed point on the screen and then
expands to take up the rest of the viewport. I think my calculations
are off though, as I can get it to expand, but it always grows to about
20px larger than the viewport. I'm doing this without any
margins/padding on any elements, and I've tried both relative and
absolute positioning of the div.
Here's what I've got so far:
jQuery.fn.expando = function(minwidth, minheight)
{
function doExpando(el)
{
var
windowHeight = jQuery(window).height(),
windowWidth = jQuery(window).width(),
offset = el.offset({ scroll: false }),
newHeight = windowHeight - offset.top,
newWidth = 'auto';
if( minheight newHeight minheight )
newHeight = minheight;
if( minwidth el.width() minwidth )
newWidth = minwidth;
el.height(newHeight);
el.width(newWidth);
}
var minwidth = minwidth || false,
minheight = minheight || false,
el = this;
doExpando(el);
jQuery(window).resize(function(){
doExpando(el);
});
return this;
}
I'm loading the dimensions plugin before this one, to help with the
calculations.
If I take 50px off the height it works ok:
newHeight
= (windowHeight - offset.top) - 50;
At the moment I've left it like that, but if some one had an idea why
it's over-sizing that would be great.
--
Phillip B Oldham
begin:vcard
fn:Phillip Oldham
n:Oldham;Phillip
org:The Activity People;Systems Development
email;internet:[EMAIL PROTECTED]
title:Chief Programmer
tel;work:0870 162 4847
x-mozilla-html:TRUE
url:http://theactivitypeople.co.uk/
version:2.1
end:vcard