CSS - Page Height Extended By Height Of Prior Div In Ff Only
If you look at the bottom of the page at www.res-technologies_DOT_com/index.php?jos_change_template=restech2 in both IE and FF, you will see that it looks fine in IE, but in FF the page length is extended by exactly the height of the header image at the top of the page. Trying to figure out what's causing this is driving me nuts! Can anyone help?
thx dh Similar TutorialsHello everybody! I have been having a big problem with my webpage for a long time now and hope I can find an answer to my problem with your help. I want a div that contains the content of my pages (which varies in length depending on the individual page) to stretch the length of my page, but it only stretches the length of the window. Here's the HTML and CSS: HTML (I only included the very basic structure): <html> <body> <div class="container"> <div id="content"> <div id="..."></div> <div id="..."></div> <div id="..."></div> <div id="..."></div> </div> </div> </body> </html>` CSS: html, body { height: 100%; font-family: Arial; font-size: 10px; color: #000000; background: #FFF url(../../images/body.png) no-repeat center 40px; margin: 0; position: relative;} .container { height: 100%; width: 960px; margin-right: auto; margin-left: auto; position: relative;} #content { width: 939px; min-height: 100%; position: relative; top: 210px; left: 6px; box-shadow: 0px 0px 8px #666; -moz-box-shadow: 0px 0px 8px #666; -webkit-box-shadow: 0px 0px 8px #666; background-color: #FFF;} I tried to set the content div to overflow: auto, but that includes a scroll bar for the content div that I do not want. It does, however, create the desired effect of the shadow and background of the #content div all the way to the end of the page. Am I missing anything? I thought min-height would work, but it doesn't! It only stretches the content div to page height and everything else is overflow, but without the content div's background color and shadow. Does anybody maybe see where the problem lies? Thank you so much in advance for your help. Hi all, I am trying to automate everything on my test website and I have one more angle to cover. In effect, I want to adjust the line-height property (which I can do) based on the number of files within a specific folder (PHP and already done). The more files in the folder, the lower the line-height value must be. This is to ensure if I copy additional files into the folder, then the navigation menu (which is PHP reading files in this particular folder) will alter the CSS line-height property accordingly to ensure it can never exceed a certain height. Sounds wierd? go to www.re3.org.uk (next to the RE3 image, I have a list of hyperlinks which are obtained from files within the folder) My problem, when adjusting the CSS property (which is set as cm in *.css file) in javascript, it doesn't correspond correctly, the line-height property in javascript doesn't appear to be work in cm but some other measurement. Does anyone know how to change what unit of measurement Javascript works in? Or does anyone know what unit of measurement javascript uses when adjusting line-height / line-width values? I want to create a mini-algorithm that works out the appropriate line-height based on the image height (got that already) and the number of files in the folder (got that too) so the menu automatically adjusts to fit. Whew! Hello Just recently I had an idea for a page I wanted to make, the design is basically a 3-column layout with no traditional header or footer, the height of all three columns should run the length of the window/page height the left and rightmost column would have a fixed width or a width in em, the center column width should fill the space in between. If the content is short all columns should extend to the height of the page window, but if the content in any of the columns is longer than the window height they should all extend to reach the bottom of the page and accommodate the content length In my first attempt things didn't go so well, results varied wildly across browsers so I decided to start from scratch bit by bit Bellow is the point at which I reach consistent but undesired behaviour, I have validated and tested the code in Firefox 3/Pale Moon, Internet Explorer 8, Chromium 9, and Opera 11 I would like the end result to work in the above browsers as well as IE7 if possible I should point out now that im not interested in using faux-columns, the layout should not require images, I also wish to have absolute-positioned elements in the columns some time later Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Three Columns</title> <style type="text/css"> *, html, body { margin: 0; padding: 0; font-size: 100%; } html, body { width: 100%; height: 100%; } #maincontainer { position: relative; height: 100%; background: #eee; } #left { position: absolute; top: 0px; left: 0px; width: 200px; background: #fbb; height: 100%; } #mid { position: relative; margin: 0 200px 0 200px; background: #efe; height: 100%; } #right { position: absolute; top: 0px; right: 0px; width: 200px; background: #bbf; height: 100%; } </style> </head> <body> <div id="maincontainer"> <div id="left"> left start<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left<br /> left end<br /> </div> <div id="mid"> mid start<br /> mid<br /> mid<br /> mid<br /> mid<br /> mid<br /> mid end<br /> </div> <div id="right"> right start<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right<br /> right end<br /> </div> </div> </body> </html> In the above example it works as long as the content within the columns is shorter than the window height, but if you re-size the window so that the text in the right or left column goes beyond the page, and then scroll to the bottom, the columns do not extend to the bottom of the page so there is a large gap where the content overflows beyond the column What I would like to do from this point is make the columns extend to the bottom of the page when this happens, but I'm not sure how best to proceed I also have a version of the above code which uses floated left and right columns instead of absolute positioned ones, would it be better to work from that? or does it not really matter Thanks in advance It seem that everytime I added the image tag, the div'x area get bigger in IE but not in Mozilla/Firefox browser. So, I thought by added the "margin-bottom:-360px;" to the div would fix it but it had an opposite effect. Meaning it worked in IE but Mozilla show a vertical scrollbar. So, does anyone know how can I make the <img> overlap one another without being stacked on one after another in height for IE if I take out the "margin-bottom: -360px;"? Thanks... Code: div.divBox1 { width: 286px; height: 359px; float: left; } div.divClearFloat { clear: both; height: 0px; /* For IE Stupidity (it added some spaces after clearing the float) */ font-size: 1pt; /* For IE Stupidity (minimum height only work with current font-size somewhere) */ } div.divDottedLineAdvertisementSeperator1 { width: 575px; height: 3px; background-color: #ff0000; font-size: 1pt; /* For IE Stupidity (minimum height only work with current font-size somewhere) */ } Code: <div class="divBox1"> <div style="margin-bottom:-360px;"> <img src="images/doctor.jpg" style="position:relative;top:0px;left:0px;z-index:2;"> <img src="images/we_help.jpg" style="position:relative;top:-360px;left:0px;z-index:1;"> </div> </div> <div class="divClearFloat"></div> <div class="divDottedLineAdvertisementSeperator1"></div> I've never done much CSS work, but I know this has to be an easy fix. Each DIV appears to be 10px higher when viewed in IE. I want them to be 8px high and they end up being 18px high. In Firefox, Netscape, and Opera it works fine. Anyone mind correcting this imbarrassing little problem? Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" > <head> <title>IE 10px Padding Problem</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <style type="text/css"> body { margin:0px; } #container { position:relative; margin:auto; width:730px; } #header { height:110px; } .textualtop { border:1px solid #000000; height:8px; } .textualbottom { border:1px solid #000000; height:8px; } </style> </head> <body> <div id="container"> <div id="header"></div> <div class="textualtop"></div> <div class="textualbottom"></div> <div class="textualtop"></div> <div class="textualbottom"></div> <p>Notice how in IE6 each DIV is 10px higher then in FF. Why is it doing this?</p> </div> </body> </html> My web page has a display bug in IE 5+ on Windows. Specifically, I have a DIV within which I wish to place two images. The two images are the same height and width, and I want to layer them (the top one is a PNG with transparency, but I have already solved that problem, this is a positioning problem) exactly on top of each other. I have done this by positioning them relatively within the DIV. The first image is top:0;left:0 and the second is top:-150;left:0 (the images are 150 px tall). They layer fine, but the DIV is twice the height (as if the second image were still following the first, making he DIV 300 px tall). I have tried many things and am stumped. Here is the site: URL Here is the relevant CSS: Code: #bannerPhoto { border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #000000; height: 150px; width: 750px; } #bannerPic { position: relative; z-index: 1; left: 0px; top: 0px; } #bannerText { position: relative; z-index: 2; left: 0px; top: -150px; } And the HTML: Code: <div id="bannerPhoto"> <div id="bannerPic"><img src="../images/bannerPhotos/image.jpg" height="150" width="750" /></div> <div id="bannerText"><img src="../images/text-cover.png" height="150" width="750" /></div> </div> Anyone? Thanks, Denver. I am having a problem trying to get one column match the height of another. Within a large DIV box, I created two columns separated by about 20 px. I floated one to the left, then pushed one over to the right. Both boxes will expand depending on the amount of content, but I would like them to match the same height. The boxes will be used throughout the entire website, so it would not make sense to create a background image to try and trick it into being the same height.. or actually specifying the height. Is there any way to tell the left box to be the same height as the right box?? I tried to link to my site but it won't let a new member link to a website. Does anyone know how to set the height so it's 100% of the page size? Setting "height: 100%" doesn't seem to work. Thanks! #bottomLeft { position: absolute; height: 100%; padding: 0; margin: 0; width: 175px; } Hi, I'm trying to make a div in my website take up the entire height of the page, or more if the page is longer. However when I've managed to get the div the full height of the page, the contents leave the div when it's longer than the page. I want the div to stretch, but be at least as long as the page. Here is a simplification of my code as an example: Code: <html> <head> <style> .contentdiv{ height: 100%; width: 758px; top: 0px; position: relative; border: 1px solid #89a9c7; padding-top: 0px; padding-bottom: 0px; border-spacing: 5px; bottom: auto; } .footerdiv { position: absolute; bottom: 0px; background-color: blue; width: 100%; height: 20px; } </style> </head> <body> <div class="contentdiv"> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> asdsadsadasd<br /> <div class="footerdiv">a</div> </div> </body> </html> Hi guys, I have a problem that really bugs me and I'm probably not seeing the super-easy simple solution that is certainly there. s369533597(dot)onlinehome(dot)us s369533597(dot)onlinehome(dot)us(slash)templates(slash)edison(slash)css(slash)template(dot)css and art.sheet is the tag. (site build on joomla 1.6) If your browser window will show more than 900px in height you'll see immediately my problem. the "body content" area will resize to the window height and not to the amount of content in it leaving a lot of blank space depending on the browser window height. I've tried all the min-height and height options and combinations but nothing really works. If I'll set up a particular height for that tag it will be OK for the home page but on any other page the overflow look awful. I just can't make it fluid. any advise? Hi, I'm working on my homepage at www.wecook.co.uk and want the grey background to at least be big enough to fill the whole page on most resoultions - currently on my monitor (1280 x 1024) it ends and i get a white at the bottom of the page - could someone suggest how i can adjust my css to fix this? any help is appreciated. thanks If you take a look here http://www.challengeyourdiet.com/login you may notice that the page does not go all the way down on big screens. I would like my footer to automatically fall to the bottom of the page no matter what screen size someone has. Any ideas? Thanks! Hey everyone. I've read this forum for a long time, and I've finally broken down and joined to seek help for my CSS problem. I cannot get my container to do what I want it to. I'm starting a new site for my family business, and I've uploaded one page for you to look at. I left the CSS code in the source in order to see. Basically, if there's too much content, the page background will not fill the screen as intended if the window is scrolled. If there's too little content, the background does fill the page, but most pages on my site will not be as such. I've also included the code below. Any help is appreciated!! Note: Please don't mind the filler pictures, text, and heading styles. http://bresslersinc.com/new_site/index.html and the <head> Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Untitled Document</title> <style type="text/css"> <!-- /* I THINK THIS IS WHERE THE PROBLEM IS. If I get rid of the below two sections of code, all links work on the site, but then my container doesn't fill 100% height until there's enough content to do so */ html, body { height: 100%; min-height: 100%; } * html #container { height:100%; min-height: 100%; } body { background-color: #666666; text-align: center; background-image: url(core_images/site_bg.gif); background-repeat: no-repeat; background-attachment: fixed; background-position: center; margin: 0; padding: 0; text-align: center; height: 100%; width: 100%; } #container { background-color: #999999; background-image: url(core_images/container_bg.jpg); border-left: medium solid black; border-right: medium solid black; position: relative; width: 700px; top: 0; margin: 0 auto; height: 100%; padding: 0px; padding-bottom: 1px; text-align: left; min-height: 100%; } #header { height: 100px; width: 700px; border-bottom: medium black solid; position: relative; top: 0px; left: 0px; padding: 0px; text-align: left; background-color: #999999; } #headeroverlay { height: 100px; width: 700px; position: absolute; top: 0px; left: 0px; padding: 0px; text-align: left; background-image: url(core_images/headeroverlay.png); } #sidenav { width: 160px; height: auto; top: 140px; left: 0px; padding: 0; margin: 0; position: absolute; } #sidenav ul { list-style: none; margin: 0; padding: 0; line-height: 40px; } #sidenav li { margin: 0px; padding: 0px; width: 100%; } #sidenav li a { display: block; padding: 0 0 0 3px; color: #ffffff; text-decoration: none; background-image: url(core_images/list_button.png); } #sidenav li a:hover { display: block; padding: 0 0 0 3px; color: #ffffff; text-decoration: none; background-image: url(core_images/list_button_mouse.png); } #emailsignup { top: 420px; left: 0px; position: absolute; width: 152px; height: 140px; padding: 0px 5px 5px 3px; background-image: url(core_images/signup_button.png); background-repeat: no-repeat; color: #ffffff; line-height: .8em; } #emailsignup h3 { font-size: 11pt; line-height: .5em; } #emailsignup p { font-size: 9pt; margin-top: 0px; margin-bottom: 0px; } #changingpicturebody { top: 103px; left: 150px; width: 550px; height: 250px; position: absolute; margin: 0px; padding: 0px; } body,td,th { font-family: Arial, Helvetica, sans-serif; } .formwidthindex { width: 100px; line-height: 80%; padding: 6px 0 0 0; } .cushycms {} #maincontent { width: 400px; height: auto; top: 354px; left: 165px; padding: 0px; position: absolute; color: white; font-family: Arial, Helvetica, sans-serif; } #maincontent h2 { margin: 0; font-family: helvetica; font-size: 13pt; border: thin solid black; font: arial; padding: 5px; line-height: 22px; background: url(core_images/h3bg.png) repeat-x; } #maincontent h3 { margin: 0; font-family: helvetica; font-size: 11pt; border: thin solid black; font: arial; padding: 5px; line-height: 20px; background: url(core_images/h3bg.png) repeat-x; } #maincontent h4 { margin: 0; font-family: helvetica; font-size: 10pt; border: thin solid black; font: arial; padding: 5px; line-height: 18px; background: url(core_images/h3bg.png) repeat-x; } #maincontent p { font-size: 10pt; color: black; padding-left: 5px; } #subcontent { width: 125px; height: auto; left: 570px; position: absolute; top: 353px; border-left: solid thin black; padding: 2px; background-color: #666666; } #subcontent h3 { margin-top: 0px; font-size: 10pt; color: white; font-family: helvetica; line-height: 15px; background: url(core_images/h3bg.png) repeat-x; border: thin solid black; width: 100%; } #subcontent p { color: white; font-size: 10pt; } #footer { bottom: 100%; position: absolute; left: 0px; background-color: black; width: 700px; border: medium solid white; height: 60px; } --> </style> </head> Greets, I'm trying to get the follwing collumns to display on the complete height of the element they are nested in. Each of the 3 collumns currently only take the space required by the content that is in said element. Preview: The current layout is set with 3 divs (2 left floating, and the bigger one on right-float). I don't want to use tables/cells and I cannot use min-height as the content will be filled by the customer using a CMS. I Wish i could use something like: Code: #col_1 {height: parent.height;} here is a link to the actual page, please note that to use the style i am talking about you will have to use the top left select element and choose GH_02 -v. (this is my 1st attempt to have the same content with multiple css sets...) I am looking for some examples on making this layout: ----------HEADER---------- nav content - - - - - - - - - - - - ----------FOOTER0--------- The page needs to be 100% the height of the browser window with header at top, footer at bottom and the content/nav being a minimum height of enough to fill the screen vertically and should be expandable. Anyone got any pointers? I have 2 div columns on a web page, they are positioned using css... the right column is taller than the left column, but the left column does not expand to the full height of the right column... I require this, because the left column has a background color that I want to go right to the bottom of the page. I have height: 100%; in the css style for the left column, but that only makes it 1 screen high... does anyone know of a way to make it the full height of the other column, ie stretch? I have tried height: auto; but that doesnt work either. Hello, I have been working on this for over 2 days and learning plenty in the process. Yet, I have come to a roadblock. I need the footer, which is outside the main container, to extend to the height of the page. The problem is that the page height changes with each page, and will change in the future, as the info for the pages will be pulled from a database. Please have a look at the footer on my site and tell me what might be a good solution. Here's the site: http://www.caillouette.com/FriendsCSS2/index.php thanks -Sean Hello all. I am working on a sign on page that uses two divs nested in a table. I have a header above them, and a footer below, and I want the divs (which have a nice gradient background) to stretch all the way down to the footer, regardless of the amount of content. In a simplified format, I have: Code: <table cellpadding="0" cellspacing="0" style="height:100%; padding-top:20px; padding-bottom:20px; width:976px;" border="0"> <tr> <td class="wrapper1" id="wrapper1" valign="top"> <table cellpadding="0" cellspacing="0" border="0" height="100%"> <tr> <td valign="top" width="100%" style="border:3px dotted black; height:100%;"> <table style="width:100%; height:100%;" border="1"> <tr> <td valign="top" style="height:100%;"> <xsl:call-template name="bodyContainerTemplate"/> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table> The tables stretch just fine. Where I am running into problems is in my bodyContainerTemplate. That template looks like: Code: <!--bodyContainerTemplate--> <div class="bgcolor1" style="width:976px; height:100%; border:2px solid;"> <div class="login_bg" style="height:100%;" id="login_bg"> <table width="100%" height="100%" border="0" style="position:relative;"> <tr> <td> My content goes here </td> </tr> </table> For some reason, once it gets into the template, height:100%; doesn't work anymore, and the divs simply stretch big enough to make room for the content. What styles am I missing for those divs to be 100%? I have messed with: min-height height:auto, relative, etc. margin:0 and a few other things, none of which are seeming to make a difference. Thanks! alright I'm stumped so please please please help me out! I have a page that's 100% in height, and usually there's more information so you have to scroll down. but I can't seem to activate the scrollbar. I've tried overflow, messing with the height attribute, i have no idea how to solve this. my page: http://www.aapinboom.nl/luxeduinvil...ntroductie.html and this is the code: Code: html,body { background-image: url('../images/bg.gif'); margin-top: 0px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; font-family: "Trebuchet MS"; font-size: 13px; height: 100%; } #center { text-align: center; width: 100%; height: 100%; } #container { margin-left: auto; margin-right: auto; width: 600px; height: 100%; border: 1px solid #B8B8B8; background-color: #FFFFFF; text-align: left; } thanks for any suggestions! Hey everyone, I'm having troubles with some DIVs. I'm trying to divide a page into 4 equal sections. If I remove the doctype declaration, it looks right in Firefox 3.5.2 In ie it is all sorts of crazy. 100% height of the inner objects seems to be referencing the window height and not the parent elements height. I'm more concerned about Firefox anyway. I expect IE to require some hacks. If I set an absolute size to the body, in px, everything works fine. But if I have the body set to %, things shrink. I tried creating a wrapper div and setting it's height/width to 50% but that didn't work either. I tried to find a solution on kravvitz and bon rouge's sites but I didn't find anything that was 100% fluid. Any ideas? HTML4Strict Code: Original - HTML4Strict Code <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <style> body{ width:100%; height:100%; padding:0; margin:0; color:#ffffff; background-color:#000000; } object{ float:left; clear:both; width:80%; height:100%; background-color:#cccccc; } .section{ float:left; clear:none; width:48%; height:48%; margin:1%; background-color:#333333; display:block; position:relative; } .panel{ float:left; clear:none; width: 16%; height:96%; margin:2% 2%; background-color:#cccccc; } #container{ float:left; clear:both; width:100%; height:100%; min-height:100%; background } </style> </head> <body> <div id="container"> <div class="section"> <object data="http://www.google.ca"> </object> <div class="panel"> <a href="#"> test </a> </div> </div> <div class="section"> <object data="http://www.google.ca"> </object> <div class="panel"> <a href="#"> test </a> </div> </div> <div class="section"> <object data="http://www.google.ca"> </object> <div class="panel"> <a href="#"> test </a> </div> </div> <div class="section"> <object data="http://www.google.ca"> </object> <div class="panel"> <a href="#"> test </a> </div> </div> </div> </body> </html>
|