CSS - Div Footer - Right And Left Not Tweaked Properly...
I haven't been able to get the blue footer's left & right margin/padding to just fall into place. I have been working on this for 3 weeks now. This is my only last open item to complete the layout feature. Grrrr.... So, I welcome any help. The red div I made is just a buffer padding that offset and keep the text be inside the blue div. (For text readablity).
CSS code Code: a { color: #000000; font-family: Verdana; font-size: 10pt; font-style: normal; font-weight: normal; } body { margin: 0px; /* remove margins */ padding: 0px; /*remove padding */ border: 0px; /* remove borders */ height: 100%; /* fix height to 100% for IE */ max-height: 100%; /* fix height for other browsers */ width: 100%; overflow :hidden; /* get rid of scroll bars in IE */ color: #000000; font-family: Verdana; font-style: normal; font-weight: normal; } div { margin: 0px; padding: 0px; } html { margin: 0px; /* remove margins */ padding: 0px; /* remove padding */ border: 0px; /* remove borders */ height: 100%; /* fix height to 100% for IE */ max-height: 100%; /* fix height for other browsers */ width: 100%; /* background: #fff; */ /*color background - only works in IE */ /* hide overflow:hidden from IE5/Mac */ /* \*/ overflow: hidden; /*get rid of scroll bars in IE */ /* */ } p { margin: 0px; padding: 0px; } div.divFooterBody { /* margin: -100px -2px 0px 0px; */ /* Margin-Top need to be in negative range to fix the location due to Gecko browsers bug with the overflow setting... Also, Margin-Left need to be in negative range to fix the location due to IE bug with the overflow setting... */ /* padding: 8px 0px 8px 0px; */ /* Margin-Left & Margin-Right need to be at 0px due to incorrect padding & location of several div tags in varieties of browsers... */ background: #ffffe0; width: 80%; border: 1px solid #000000; color: #000000; font-family: verdana; font-size: 10pt; font-style: normal; font-weight: normal; z-index: 5; } div.divLayoutContent { position: relative; height: 100%; max-height: 100%; display: block; overflow: auto; z-index: 3; } div.divLayoutFooter { position: absolute; bottom: -1px; right: 15px; /*margin: 0px 15px 0px 0px; */ width: 100%; height: 50px; /* display: block; */ z-index: 4; } div.divLayoutHeader { position: absolute; top: 0px; right: 15px; margin: 0px; width: 100%; height: 100px; display: block; z-index: 5; } div.divLayoutFooterBuffer1 { position: absolute; bottom: -1px; /* padding: 0px 5px 0px 5x; */ /*padding-left: 8px;*/ /*padding-right: 8px;*/ /*margin-right: -40px;*/ /*padding-left: -10px;*/ /*margin-left: 25px;*/ /* margin-top: 19px; */ /* padding: 20px 17px 10px 31px;*/ /* ??(padding-left 15px + 16px) padding-left:16px is the buffering to correct the absolute position - right of 15px... */ width: 100%; height: 90px; display: block; background-color: #0000ff; } div.divLayoutFooterBuffer2 { height: 100px; display: block; background-color: #ff0000; } div.divLayoutHeaderBuffer1 { padding: 12px 0px 12px 16px; /* padding-left:16px is the buffering to correct the absolute position - right of 15px... */ color: #ffffff; font-family: Verdana; font-size: 250%; text-align: center; background: #000000; } div.divLayoutHeaderBuffer2 { height: 100px; display: block; background-color: #ff0000; } HTML code 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> <title>Web Layout</title> </head> <body> <div class="divLayoutHeader"> <div class="divLayoutHeaderBuffer1">blah blah...</div> </div> <div class="divLayoutContent"> <div class="divLayoutHeaderBuffer2"></div> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> blah blah<br />blah blah<br />blah blah<br />blah blah<br />blah blah<br /> <div class="divLayoutFooterBuffer2"></div> </div> <div class="divLayoutFooter"> <div class="divLayoutFooterBuffer1">hhh <div class="divFooterBody"> blah blah <a href="#">blah</a> <a href="#">blah</a> <a href="#">blah</a> <a href="#">blah</a> </div> </div> </div> </body> </html> Thanks... Similar TutorialsHey everyone, I am working on a design for a friend. and I got it almost done, but for some reason, the footer does not display below the page. In no browser. Here is my code: 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" lang="en"> <head> <title>BlackNine</title> <script type="text/JavaScript" src="rounded_corners_lite.inc.js"></script> <style type="text/css"> body { background-color: #4D4D4D; color: #FFFFFF; font-family: verdana,tahoma,san-serif,arial; font-size: 13px; margin: 0; padding: 0; } a img { border: 0; } a, a:link, a:visited, a:hover, a:active { color: #ff9600; text-decoration: underline; } a:hover { color: #000000; } li { background-image:url(li.jpg); background-repeat:no-repeat; background-position:left; list-style-type: none; padding-left: 18px; } #header { width: 100%; } #header h1 { color: #ff9600; font-size: 25px; padding-top: 5px; } #header h2 { position: absolute; top: 0; padding-left: 55px; color: #CCCCCC; font-size: 13px; } #main { border-top: 5px solid #0042ff; border-bottom: 5px solid #0042ff; position: absolute; background-color: #FFFFFF; height: auto; margin: 0; width: 98%; color: #000000; padding-right: 2%; } #main h1 { color: #ff9600; font-size: 19px; } #main p { text-indent: 55px; } #rightCol { float: right; width: 20%; position: absolute; right: 0; height: 100%; border-left: 1px dotted #ff9600; } #leftCol { float: left; width: 75%; padding: 2%; } #footer { text-align: center; clear: both; } </style> </head> <body> <div id="header"> <h2>I am so fly</h2> <h1>BlackNine</h1> </div> <div id="main"> <div id="rightCol"> <ul> <li><a href="">asdf</a></li> <li><a href="">asdf</a></li> <li><a href="">asdf</a></li> <li><a href="">asdf</a></li> <li><a href="">asdf</a></li> <li><a href="">asdf</a></li> </ul> </div> <div id="leftCol"> sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf sdfgfgf fsadfsdfsdfjasdklfjsadfksdjf </div> </div> <div id="footer"> asdfsafjsdkf sdafkljsdfk lsdlkfjsd afkljsdfsdklfjsdf asdfksdjf </div> </body> </html> Here is what it looks like. Any suggestions? Hey all, This is my first post in the CSS forum, as i have just started a project to make a 100% validated CSS based site, however i am having a little trouble. On the page in question www.chewie.co.uk/3phones.com/ i have a 3 column layout with the navigation on the left and a news section on the right, middle coloumn houses page content. The problem that i am having is that i cannot get the div to reach down the page to the footer, so as you an see i am left with an ugly white space between them. As i say i am just starting so it is a little confusing, but i have searched around the net, tried to add more container divs, played around with the attributes etc, but just cant fix it because i dont understand why it is happening. If any one could shed some light i would be very grateful... Nav div html Code: <!-- Left Navbar --> <div id="navBar"> <div id="sectionLinks"> <h3>Section Links</h3> <ul> <li><a href="#">Section Link</a></li> <li><a href="#">Section Link</a></li> <li><a href="#">Section Link</a></li> <li><a href="#">Section Link</a></li> <li><a href="#">Section Link</a></li> <li><a href="#">Section Link</a></li> </ul> </div> <div class="relatedLinks"> <h3>Related Link Category</h3> <ul> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> </ul> </div> <div class="relatedLinks"> <h3>Related Link Category</h3> <ul> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> <li><a href="#">Related Link</a></li> </ul> </div> </div> <!--end navBar div --> Nav div CSS... Code: #navBar{ float: left; width: 20%; margin: 0px; padding: 0px; background-color: #eeeeee; border-right: 1px solid #cccccc; height: 100%; } /*********** #navBar link styles ***********/ #navBar ul a:link, #navBar ul a:visited {display: block;} #navBar ul {list-style: none; margin: 0; padding: 0;} /* hack to fix IE/Win's broken rendering of block-level anchors in lists */ #navBar li {border-bottom: 1px solid #EEE;} /* fix for browsers that don't need the hack */ html>body #navBar li {border-bottom: none;} /*********** #sectionLinks styles ***********/ #sectionLinks{ position: relative; margin: 0px; padding: 0px; border-bottom: 1px solid #cccccc; font-size: 90%; } #sectionLinks h3{ padding: 10px 0px 2px 10px; } #sectionLinks a { display: block; border-top: 1px solid #cccccc; padding: 2px 0px 2px 10px; } #sectionLinks a:hover{ background-color: #dddddd; } Thanx for reading. In my footer I'm having a problem with my links aligning left. I'm not sure how I would go about coding it so that Promotional Kit aligns left underneath Headshot v2. I tried text-align: left in ul, li, and in the footer link section but nothing. I may need to change the layout all together which is fine, but I could use your help. Thanks in advance http://www.lonniebruhn.com/sitelab/ and here is the css code: Code: body, html { font-size: 100%; margin: 0; padding: 0; text-align: center; line-height: 100%; background-color: #000;} #container { margin: 0px auto 90px auto; width: 940px; text-align: left; background-image: url(images/container-bg.jpg); background-repeat: no-repeat; background-color: #1d1d1d;; overflow: hidden} object { display:block; z-index:1} #header { width: 920px; position: relative; top: 5px; margin: 0 auto; background-color: #333; border: 2px #000 solid;} #header h1 {color: #ffffff; font-size: 2em; font-family: Impact, "Arial Black", Trebuchet, sans-serif, "Times New Roman"; line-height: 90%; text-align: center; margin: 0; padding: 10px;} .quote { position: relative; text-align: right; Left:10px; font-family: "Arial Black", Verdana, Helvetica, Arial, sans-serif; color: #ffcc33; font-size: .5em; font-style: italic; } #logo { position: relative; margin:0 auto; background-image: url(images/header-logo.jpg); background-repeat: no-repeat; width:920px; height:120px; border: 2px #000 solid; } #left { margin: 15px 10px 0px 10px; width:180px; position: relative; width: 180px; float: left; border: 2px #000 solid; background-color: #333;} #left h1{ height:20px; margin: 10px auto; color: #ffcc33; font-family: Impact, "Arial Black", Verdana, Helvetica, Arial, sans-serif; font-size: 1.50em; text-align: center; text-decoration: underline; } #dates { position: relative; margin: 0 auto; text-align: left; } #dates ul { margin:0; color: #ffffff; font-family: Verdana, Arial, sans-serif; font-size: .625em; font-weight: bold; position: inherit;} #dates li { padding: 10px 0 5px 5px; list-style-image: url(images/1.gif); display: list-item; margin: 0px 18px 15px -15px; list-style-type: none; text-align:left; border-bottom: 2px #ffcc33 dashed;} #mainbody { position: relative; background-color:#333; width: 480px; min-height:320px; margin: 15px auto; right: 20px; border: 2px #000 solid; } #right { position: relative; width: 220px; background-color: #333; min-height: 320px; float: right; border: 2px #000 solid; margin-top: 15px; margin-right: 10px;} #right h1 { text-align: center; color: #ffcc33; font-family: Verdana, Arial, sans-serif; font-size: 1.25em; margin: 0 auto; padding-top: 10px; padding-bottom: 10px;} #footer-wrap { background-image: url(images/footer-bg.gif); width: 100%; height: 78px; z-index: 2; left: 0; bottom: 0; position: fixed; text-align:left} #footer-left { position:fixed; width: 244px; min-height:68px; margin-top: 5px; border-right: 2px #000 solid; left:-25px; padding-right: 25px; float:left;} #footer-left ul{ display: block; margin:0; width:244px; list-style-type: none; } #footer-left li { display: inline; margin-right:10px; } #footer-wrap a:link, #footer-wrap a:visited, #footer-wrap a:active { color: #000; font-family: Verdana, Helvetica, Arial, sans-serif; font-size: .75em; text-decoration: none; } #footer-wrap a:hover { text-decoration: underline;} #footer-center { position: fixed; } #footer-right { position: fixed; } p { margin:0 25px 25px 25px; font-size: .875em; font-family: Trebuchet, Verdana, Georgia, sans-serif, "Times New Roman"; color: #fff; text-align: justify;} #links{ text-align: right; padding: 2px; } #links a:link, #links a:visited, #links a:active { right:8px; font-weight: bold; font-size: 0.625em; font-family: Verdana, Arial, sans-serif; color: #cccccc; font-family: Verdana, Arial, sans-serif; text-decoration: none; position: relative;} #links a:hover { text-decoration: underline;} #links ul {margin: 0; list-style-type:none} #links li { display: inline; } #menu { height: 15px; width: 920px; height:22px; position: relative; margin: 0 auto; background-color: #333; border-left: 2px #000 solid; border-bottom: 2px #000 solid; border-right: 2px #000 solid;} #menu ul{margin: 0 auto;} #menu li { float: left; margin: 0; padding: 0; list-style: none; } #menu li a { display: block; height: 20px; text-decoration: none; padding: 0 19px 0 19px; border: 2px #000000 solid; text-transform: uppercase; font-size: 0.75em; font-family: Verdana, Helvetica, Arial,sans-serif; color: #ccc; background-color: #666;} #menu li a:hover, #menu li a#selected, #menu li a#selected:hover { border: 2px #000000 solid; background-color: #3f3f3f; } .postdate { display:block; margin: 10px 20px 20px 20px; padding-left: 10px; color: #ffcc33; font-family: Verdana, Helvetica, Arial, sans-serif; font-size: 0.75em; background-color: #000;} .post p { margin: 0px 5px 0px 5px; font-size: .75em; font-family: Trebuchet, Verdana, Georgia, sans-serif, "Times New Roman"; padding: 10px; padding-top: 20px; line-height: 120%; } .post h1 { margin: 0px 5px 0 5px; color: #ffcc33; font-size: 1.2em; font-family: Verdana, Georgia, sans-serif, "Times New Roman"; padding: 10px; text-decoration: underline;} .post h2 { margin: 0px 20px 0 20px; color: #ffcc33; font-size: .6em; font-family: Trebuchet, Verdana, Georgia, sans-serif, "Times New Roman"; padding: 15px 10px 5px 10px; text-transform: uppercase; border-bottom: 8px #666 double;} .blue { color: #3399ff;; margin: 5px 0 10px 0; display: block;} .video { width: 190px; margin: 10px auto 0px auto; z-index: 1} I'm trying to use CSS to create a layout that has a top header, followed by a left side navbar, a center content area, and a bottom footer. I'm totally lost by the CSS needed to make this happen. Here's what I'm trying. It's borrowed from other posts that came up by searching for headers and footer. Any help would be fantastic. I'm trying to end my use of frames for the header and navbar. Thanks in advance for any help. Code: #header { left: 0; width: 100%; height:125px; top: 0; background-image: url(images/topbackground2.jpg); background-repeat: repeat; } #navbar{ width:122px; height:100%; background-color:#3f79a1; position: absolute; top: 125px; left: 0px;} #footer{ background-image: url(images/gradientsmaller2.gif); font: 10pt; position: absolute; bottom: 0; left:0; background-color: #ccffcc; width: 100%; text-align: center; padding: 0 15%; } I'm attempting to get a page that has a header, footer, left navigation bar with a fixed width, with a right "fluid" content section. I can get it to work by giving the main content a "margin-left" of the width of the navigation panel, and absolutely positioning the navigation. Problem is, with the navigation being absolutely positioned, it takes it out of the flow and doesn't push the container to fit its contents. I've trying playing with using floated divs, which is I'm sure the way I'll have to go, but I want the navigation bar to always be a fixed width of 175px, and I want the content section to stretch to fill the remaining space. I'd also like to make sure the content portion appears BEFORE the navigation panel in the order it appears on the HTML for SEO purposes. I'm sure it's easy using Javascript, but I'd like to do a pure CSS solution, if possible. How do I do that? Here is the link if you want to have a look: http://www.chcs-ut.com/support.php?section=technical http://cheers-sendai.com/fluidframe.htm has a great and simple example of 3 cols (OK, 2 cols in the middle section makes "4 cols"), header and sticky footer, where the middle col has overflow:auto so it can be scrolled. GREAT example, I think (due to the use of bg colors, etc.). The left/right/width values of the divs are manipulated so that the middle section runs from 10% to 90% and the left/right divs fill in accordingly. I'd like to be able to set, for example, the left and right divs to be 150 px wide (NO percentages!) and have the middle section stretch between them (regardless of viewport width) and be able to be scrolled, too. The problem I see is that most examples use percentages. I can set the left div to be a fixed width, then set the middle section left coord. to be, say, 150px, but then I need to set its width to stretch to "150 to the left of the right side of the viewport" and I don't know how to do this. Thanks. ok at Rodoslovlje I have an issue. The menu on the left is most of the times longer then the right content part. Is there a way to fix that when this occurs I can make the right part move along without editing every page and hitting enter 20 times? Thnx Hello, I have two columns, one is on the left and another in the middle (center). Left column is where I want it to be, central column is also aligned properly, however, it is below left column. I want it to be on the same level as left. See here see how it got below ? It is XHTML validated and CSS is fine too (some background color warnings). Plz help me to make central column go up. Thanks. I've been unable to replicate this issue in IE, but it's plaguing all other "free" browsers I use (Firefox, Galeon, etc.). Take a look at http://www.skudd.com/blog/view/1370 for example. The bar on the left is floated left, as are the label elements in my comment form. In the li of each form item, I have a br with the clear property set to "left". What I'm trying to accomplish is I want to clear the previous label, so as to prevent the "stair step" effect. Why would "clear: left;" in this case cause the element to clear everything that has been floated left? What should I try in place of it? I always seem to run into this problem and somehow get it fixed but this time I am stuck. I have a main wrapper and 2 footers that line up together and are all floated to the left. I'm trying to put in a column to their right that runs vertical called "right", to be spaced out about 110 px from the top of the page so it sits vertically below the banner and the navs. I tried giving it a left margin to clear the floated DIV's but to no avail. You can see the page he http://yourthreshold.com/playground/ It seems to clear in Firefox but not in IE .. The main CSS: Code: * { margin: 0; padding: 0; } body { margin:0; padding:0; background-color:#e5e5e5; } #wrapper { width: 640px; height: 720px; margin-left:0; margin-top:0; border: 2px solid gray; border-bottom: 0px solid gray; background-image:url(../images/banner.jpg); background-repeat:no-repeat; background-color:#c0c0c0; float:left; } #navigation { width: 640px; height: 22px; background-color:#c9c9c9; margin-top: 88px; } #insidewrapper { height:auto; width:99%; margin: 6px 1px 4px 1px; } /* Begin Left Side Info Boxes */ #sidebar { width:150px; height:600px; margin-left:2px; float:left; border:1px solid #666666; border-bottom:0px; font-family:Verdana, Arial, Helvetica, sans-serif; font-size:9px; color:#666666; background-color:#ffffff; } .infobox { height:123px; font:Verdana, Arial, Helvetica, sans-serif; font-size:9px; padding:3px; border-top:0px; border-left:0px; border-right:0px; } .infopic { margin-top:9px; } .infobutton { height:20px; border-bottom:1px solid #666666; padding-left:3px; } /* Begin Main Content */ #maincontent { width:465px; height:593px; margin-left:158px; border:1px solid; border-color:#666666; font:Verdana, Arial, Helvetica, sans-serif; font-size:12px; color:#333333; padding:3px; background-image:url(../images/background_trans2.gif); background-repeat:no-repeat; background-position:center; background-color:#ffffff; } /* Main Content for pages with textual content */ #content { width:97%; height:auto; padding:5px; } /* Main Content for pages with products */ #productWrapper { height:auto; width:100%; margin-top:10px; } #productLeft { height:auto; width:115px; float:left; } #productMiddle { height:auto; width:200px; margin-left:1px; float:left; } #productRight { height:auto; width:auto; } /* Begin Footer */ #footerlinks, #footer { width:640px; height:auto; text-align:center; float:left; } #footerlinks { border-right: 2px solid gray; border-bottom: 1px solid gray; border-left: 2px solid gray; background-color:#c0c0c0; font:Verdana, Arial, Helvetica, sans-serif; font-size:9px; letter-spacing:1px; color:#555555; padding-bottom:4px; } #footer { margin-left:0; margin-top:0; margin-bottom:15px; padding-top:8px; border-top: 0px; border-right: 2px solid gray; border-bottom: 2px solid gray; border-left: 2px solid gray; font:Verdana, Arial, Helvetica, sans-serif; font-size:9px; color:#555555; background-color:#a9a9a9; } /* Begin Rightside Column */ #right { border: 1px solid orange; width:195px; margin-left:650px; padding-top:111px; } OK, so I have this nice clean form that I wanted to style up like the table-forms of old. I did it by floating the labels and form elements left, then clearing the labels left so they use their own lines. This works beautifully in Firefox and Safari, but IE (Win, at least) seems to think everything not cleared left should go on the same line! Is this a known IE bug/discrepancy? If so, is there a way to combat it without introducing meaningless elements to the markup (such as encasing each label/element pair in a div)? Here's some example HTML: html4strict Code: Original - html4strict Code <?xml version="1.0" encoding="iso-8859-1"?> <!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" lang="en" xml:lang="en"> <head> <title>Test</title> <style type="text/css"> @import url("style.css"); </style> </head> <body> <form name="form" action="test.php" method="post"> <label for="name">Name:</label> <input type="text" name="name" /> <label for="thoughts">Your Thoughts:</label> <textarea name="thoughts"></textarea> <label for="fun">Having fun?</label> <input type="checkbox" name="fun" value="yes" /> </form> </body> </html>
And the CSS: css Code: Original - css Code label { display: block; float: left; clear: left; width: 8em; margin-right: .5em; text-align: right; } input, textarea { display: block; float: left; }
Hi, I have this page: Code: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <title>New Page 1</title> <style type="text/css"> * { padding: 0; margin: 0; } p {padding: 0; margin: 0; } html {padding:0; margin:0;} .leftDiv { height: 100px; width: 30px; background-color: teal; float: left; } .mainDiv { padding: 5px 0 10px 0px; width: 200px; height: 20px; background-color: blue; } .mainPara { padding-left: 5px; } </style> </head> <body> <div id="contentDiv" style="width: 700px; height: 700px;"> <div class="leftDiv"> </div> <div class="mainDiv"> <p class="mainPara"> First Para </p> </div> <div class="mainDiv"> <p class="mainPara"> Second Para </p> </div> </div> </body> </html> And have two questions. First, why the gap between the left div and mainDiv in IE? I thought 3px bug was only for block elements with no dimensions? Second, why does padding left not take effect in FF untill I have overcome the width of the float? Even padding-left in the para does not take effect, which should be based off of its parent. Any help is appriciated, CJB I'm having trouble with my website structure... view this page for an example... css is here... The Footer (which currently consists just of the validation images) is suppossed to be at the bottom of the page... It works in IE except there is a little line between the images (it is also part of the link...), and it doesn't work at all in FF... how do I get rid of the line in IE, and what do I need to add or change in my css to get it to be viewed properly in FF? Thanks Bryan Something I think I'm not doing. I'm using something called niftyCorners and thought that was what was cauing the problem, but now I'm not so sure. I am trying to have this appear on a webpage for the reader to use: <script language="JavaScript"> <!-- alert("Sample JavaScript alert box 1."); alert("Sample JavaScript alert box 2"); alert("There you go, alert boxes \nTa da, and one with a new line!"); // --> </script> Now, I need to have the <pre> tag nested inside a div tag, but this doesn't validate. So, I nested the code tag inside the pre tag and it breaks my layout in IE 6.0. Why am I nesting at all? niftyCorners doesn't work very well when you put padding or margin on any div you want to have rounded corners. So, I'm trying to put a div round my pre tag, so I can round the div and I can use the pre tag to control margin/padding. If anyone has any ideas, I'd appreciate it. Please help! I've got two rounded boxes one is contained in the other. If the innerbox grows, the outer box should grow with it. Firefox does a great job and grows with it but IE7 doesn't grow, any help would be greatly appreciated. here's the CSS i've used for IE: Code: /* first rounded box */ /* images are set in the index.php */ /* height and width details */ .rbtop div, .rbtop, .rbbot div, .rbbot { width: 100%; height: 14px; font-size: 1px; } /*.rbroundbox { width: 60em; margin: auto; background-color: #37a5f0;} */ .rbroundbox { position: absolute; top: 15px; width: 800px; margin: 5em 0 0 2em; background-color: #37a5f0; } .rbcontent { margin: 0 14px; min-height: 570px; height: 100%; } /* EOF first rounded box */ /* second rounded box */ /* images are set in the index.php */ /* height and width details */ .rbtop2 div, .rbtop2, .rbbot2 div, .rbbot2 { width: 100%; height: 24px; font-size: 1px; } /*.rbroundbox { width: 60em; margin: auto; }*/ .rbroundbox2 { position: absolute; top: 5px; width: 577px; margin: 9.5em 0 0 12em; background-color: #9cd5f0;} .rbcontent2 { margin: 0 14px; min-height: 375px; } /* EOF second rounded box */ here's the html i've used: Code: <body> <div class="rbroundbox"> <div class="rbtop"><div></div></div> <div class="rbcontent"> <div class="rbroundbox2"> <div class="rbtop2"><div></div></div> <div class="rbcontent2"> <p><?=$content?></p> </div><!-- /rbcontent2 --> <div class="rbbot2"><div></div></div> </div><!-- /rbroundbox2 --> </div><!-- /rbcontent --> <div class="rbbot"><div></div></div> </div> <!-- /rbroundbox --> </body> Alright.. I'm having a hard time trying to get this to work in the various browsers. Essentially what I'm doing is creating a navigational bar at the top, with one of the links containing a pure CSS drop down menu. Seems to work fine (in IE 6 and FF... need to test in IE7, NS, and Opera. I don't have IE7, so can't test there). I have placed an image above the navigational bar as well. I'm trying to get the navbar centered on the page (can't seem to get it centered. I'm also trying to make the width of the navbar, say 700px or 80% or whatever.. but as long as it's centered in all the browsers... Any ideas on making this right, or even cleaning up the code? Thanks. Here's the code for the HTML: 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"> <html> <head> <title>Page Title</title> <link rel="stylesheet" type="text/css" href="menu5.css" /> <style> body {background-color:#fdeadc; text-align:center; .container { background-image:url('images/navbar.jpg'); } .clearfix:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; } .clearfix { display: inline-block; } html[xmlns] .clearfix { display: block; } * html .clearfix { height: 1%; } </style> </head> <body> <div class="logo"> <img src="images/logo.jpg"> </div> <div class="container clearfix"> <div class="navbar"> <ul class="menu5"> <li><a href="#">Home</a></li> <li><a href="#">Company</a></li> <li><a class="drop" href="#">Services<!--[if IE 7]><!--></a><!--<![endif]--> <!--[if lte IE 6]><table><tr><td><![endif]--> <ul> <li><a href="#">Why Our Service</a></li> <li><a href="#">Why Our Site</a></li> <li><a href="#">How does it work</a></li> <li><a href="#">Message Analysis</a></li> <li><a href="#">Message Handling</a></li> </ul> <!--[if lte IE 6]></td></tr></table></a><![endif]--> </li> <li><a href="#">Trial</a></li> <li><a href="#">Support</a></li> <li><a href="#">Client Login</a></li> <li><a href="#">Partners</a></li> <li><a href="#">Contact Us</a></li> </ul> </div> </div> </body> </html> CSS Code: Code: /* commom style for all browsers */ .menu5 { width:625px; margin:auto; text-align:left; position:relative; padding:0; list-style-type:none; } .menu5 ul { padding:0; margin:0; list-style-type:none; /* for Firefox */ } .menu5 li { float:left; position:relative; } .menu5 li a, .menu5 li a:visited { text-align: left; display:block; text-decoration:none; float:left; padding-right:1em; line-height:2.5em; height:2.5em; color:#dd0b14; } .menu5 li ul { visibility:hidden; position:absolute; left:0; height:0; overflow:hidden; } .menu5 table { margin:-1px; border-collapse:collapse; /* font size for IE5.5 */ } /* fist line style for IE7 and non-IE browsers and the second line for IE5.5 and IE6 */ .menu5 li:hover a, .menu5 li a:hover { text-decoration:underline; border:0; color:#dd0b14; } .menu5 li:hover ul, .menu5 li a:hover ul { visibility:visible; height:auto; background:#fff; border:1px solid #ddd; left:0; top:2.5em; overflow:visible; } .menu5 li:hover ul li a, .menu5 li a:hover ul li a { display:block; font-weight:normal; background:transparent; text-decoration:none; height:auto; line-height:1em; padding:0.5em; } * html .menu5 li a:hover ul li a { width:10em; w\idth:9em; /* hack for IE5.5 */ } .menu5 li:hover ul li ul, .menu5 li a:hover ul li a ul { visibility:hidden; position:absolute; height:0; overflow:hidden; } .menu5 li:hover ul li a:hover, .menu5 li a:hover ul li a:hover { text-decoration:underline; } .menu5 li:hover ul li:hover ul, .menu5 li a:hover ul li a:hover ul { visibility:visible; border:1px solid #ddd; height:auto; background:#fff; } .menu5 li:hover ul li:hover ul li a, .menu5 li a:hover ul li a:hover ul li a { display:block; height:auto; } .menu5 li:hover ul li:hover ul li:hover a, .menu5 li a:hover ul li a:hover ul li a:hover { text-decoration:underline; } Hi. Having some trouble with IE (as per usual) and css. I have a container with the id "text". On a normal page, the styling for an unordered list is to use my own bullet point image and have a margin of 20px (as IE sees fit to hide the bullets off the left edge). However, on my sitemap page, inside the text div, there is a div called sitemap and I have written the style of ul's in this div to have no list-style. Of course in ff and opera this works fine and the lists have no style, but IE persists in using the bullet image. It seems like it's taking the rule: div#text ul { list-style: url(blah blah blah) etc. } to be the only ul styling rule, and anything which contradicts it is ignored: div#text div#sitemap ul { list-style: none; } Any help would be greatly appreciated, Thanks UPDATE: Just fixed it, still haven't a clue as to why it's happening tho. What I did was to say: div#text div#sitemap ul { list-style: url(); } Can anyone enlighten me as to the cause? I am working on this website babeside dot be Everything is going as I want it in all browsers, except IE. When opening the website in IE, and selecting a babe, the babe-part is shown waaaaay underneath all the other parts of the site. Can anyone help me how to fix this? So basically here's the problem.... I'm using a jquery folder tree. By default, there is a plus and minus sign designating expanded or collapsed. If you click the sign only, would the menu expand/collapse. However, for my needs, I need the entire name beside the sign to be clickable as well. So I adjusted certain items and it works... in Opera, Firefox, Safari, Flock, and Chrome... (All latest versions I just downloaded today). It doesn't, however, work in IE6 (yes.. I still use IE6). Have not tested in IE7 or IE8... I posted this in the CSS forum as it seems as though it's a CSS problem as opposed to Javascript or PHP... Anyways... here's the CSS file: Code: .treeview, .treeview ul { padding: 0; margin: 0; list-style: none; } .treeview ul { background-color: white; margin-top: 4px; } .treeview .hitarea { background: url(images/treeview-default.gif) -64px -25px no-repeat; height: 16px; width: 100px; margin-left: -16px; float: left; cursor: pointer; } /* fix for IE6 */ * html .hitarea { display: inline; float:none; } .treeview li { margin: 0; padding: 3px 0pt 3px 16px; } .treeview a.selected { background-color: #eee; } #treecontrol { margin: 1em 0; display: none; } .treeview .hover { color: red; cursor: pointer; } .treeview li { background: url(images/treeview-default-line.gif) 0 0 no-repeat; } .treeview li.collapsable, .treeview li.expandable { background-position: 0 -176px; } .treeview .expandable-hitarea { background-position: -80px -3px; } .treeview li.last { background-position: 0 -176px } .treeview li.lastCollapsable, .treeview li.lastExpandable { background-image: url(images/treeview-default.gif); } .treeview li.lastCollapsable { background-position: 0 -111px } .treeview li.lastExpandable { background-position: -32px -67px } .treeview div.lastCollapsable-hitarea, .treeview div.lastExpandable-hitarea { background-position: 0; } .treeview-red li { background-image: url(images/treeview-red-line.gif); } .treeview-red .hitarea, .treeview-red li.lastCollapsable, .treeview-red li.lastExpandable { background-image: url(images/treeview-red.gif); } .treeview-black li { background-image: url(images/treeview-black-line.gif); } .treeview-black .hitarea, .treeview-black li.lastCollapsable, .treeview-black li.lastExpandable { background-image: url(images/treeview-black.gif); } .treeview-gray li { background-image: url(images/treeview-gray-line.gif); } .treeview-gray .hitarea, .treeview-gray li.lastCollapsable, .treeview-gray li.lastExpandable { background-image: url(images/treeview-gray.gif); } .treeview-famfamfam li { background-image: url(images/treeview-famfamfam-line.gif); } .treeview-famfamfam .hitarea, .treeview-famfamfam li.lastCollapsable, .treeview-famfamfam li.lastExpandable { background-image: url(images/treeview-famfamfam.gif); } .filetree li { padding: 3px 0 2px 16px; } .filetree span.folder, .filetree span.file { padding: 1px 0 1px 16px; display: block; } .filetree span.folder { background: url(images/folder.gif) 0 0 no-repeat; } .filetree li.expandable span.folder { background: url(images/folder-closed.gif) 0 0 no-repeat; } .filetree span.file { background: url(images/file.gif) 0 0 no-repeat; } Here's the relevant nav menu code: Code: if (mysql_num_rows($result) != '0') { while($row = mysql_fetch_array($result)) { $string5= $row['string']; $state3 = $row['state']; $county3 = $row['county']; $city3 = $row['city']; $item3 = $row['item']; if ($state2 != $state3) { if ($i != 1) { $treeview .= "</ul></li></ul></li></ul></li>"; } $i++; $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"><a href=\"#\" style=\"margin-left:20px;\">".$state3."</a></div><br />"; $state2 = $state3; $j = 1; } if ($county2 != $county3) { if ($j != 1) { $treeview .= "</ul></li></ul></li></ul>"; } $j++; $treeview .= "<ul style=\"display:none;\">"; $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"><a href=\"#\" style=\"margin-left:20px;\">".$county3."</a></div><br />"; $county2 = $county3; } if ($city2 != $city3) { $treeview .= "<ul style=\"display:none;\">"; $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"><a href=\"#\" style=\"margin-left:20px;\">".$city3."</a></div><br />"; $city2 = $city3; $treeview .= "<ul style=\"display:none;\">"; } if ($item3) { $treeview .= "<li>".$item3."</li>"; $item2 = $item3; } } } $treeview .= "</ul></li></ul></li></ul></li></ul>"; There are 3 lines of code that I have changed from when it works: Code: $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"><a href=\"#\" style=\"margin-left:20px;\">".$state3."</a></div><br />"; $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"><a href=\"#\" style=\"margin-left:20px;\">".$county3."</a></div><br />"; $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"><a href=\"#\" style=\"margin-left:20px;\">".$city3."</a></div><br />"; From the above 3 lines, the only thing I did which seemed to break the code was move the </div> from in front of <a href ...> to after </a> So the original lines (where it worked) looked like: Code: $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"></div><a href=\"#\" style=\"margin-left:20px;\">".$state3."</a><br />"; $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"></div><a href=\"#\" style=\"margin-left:20px;\">".$county3."</a><br />"; $treeview .= "<li class=\"expandable\"><div class=\"hitarea expandable-hitarea\"></div><a href=\"#\" style=\"margin-left:20px;\">".$city3."</a><br />"; EDIT: Ok... so not everything works in the other browsers either. Basically if I hit refresh with the new code, then collapse and expand seem to work in reverse.... So not sure how to correct this, but any help would be appreciated... Here is what it looks like (Screen shots): Working Properly in FF After a refresh in Firefox (This is after hitting collapse) Working Properly in IE6 (Before making the changes mentioned above) Not Working in IE6 The site is not currently accessible which is why I'm including screen shots. However, if you need to see them, let me know and I will make it live.... Heading out now, so was trying to get a post up at least before I left... Thanks.. if you need further information or additional code, let me know. Any help would, of course, be appreciated. I'm confused as to what's causing this... http://www.houndsandme.com/ It looks great in FireFox of course... but in IE6 the #column div is longer than it's supposed to be so that the background of the inner elements doesn't cover it all the way. It's almost like either the padding of the #column div, or the margin of the inner div (but only the last one) is incorrect... Also, have a look at IE7 for some really strange happenings... Make sure you scroll over the nav links |