CSS - Cross-browser Positioning Problems
I'm having a few related problems...
1. I want the Flash picture slideshow centered vertically and horizontally in its div id="flashbox", when viewed in IE 6 & 7. 2. Also when viewed in IE 7 the graphic buttons in the div id="topright" are overlapping text in the div id="rightcolumn" 3. And finally, the the graphic buttons in the div id="topright" do not fill up their space at the bottom when viewed in IE 6 & 7. Any ideas on any of these issues is much appreciated. Thank you in advance. The link to the page in question is: http://www.oharenoise.org/new/index.htm Similar TutorialsI'm new to CSS layouts, and being a relic who was always happy using tables, it's causing me some headaches! My latest conundrum involves trying to align a row of text to the bottom of an otherwise empty div. Here is my attempt, using colors for illustration only. (This is of course only a simplified version of my design, so while the "outer" DIV might look superfluous it has to be there. In my real design it is wider and contains three DIVs side by side - "box3" being just one of them.) Code: <html> <head> <style type="text/css"> #outer { position: absolute; float: left; width: 228px; height: 196px; margin-top: 0px; } #box3 { float:left; width:228px; height:196px; background-color: green; text-align:right; display: table; #position: relative; overflow: hidden; font-weight:bold; } </style> </head> <body> <div id="outer"> <div id="box3"> <div style=" #position: absolute; #top: 50%;display: table-cell; "> <div style=" #position: relative; #top: -50%; background-color: yellow;"> <p style="bottom:0;right:0;position:absolute; background-color: red;"> some <i>text goes here</i> </p> </div> </div> </div> </div> </body> </html> It looks fine in Firefox and Chrome, even if I don't quite understand why the text is elevated slightly from the bottom - that's okay. But in Internet Explorer, the text is nearer the top, and squashed to the right-hand side so that it's forced to wrap onto multiple lines. The forum won't let me post an image so see if you can decipher this URL: ht tp :// i49 .tiny pic. com /j8znti.png Can anyone help me adjust the code so that it displays in IE the same way as in Firefox and Chrome? I'd really like to understand why it's so different and how to prevent a similar problem in future. Many thanks! For my website at btccaction.co.uk I have chosen a CSS menu at the top as the ideal solution. However I'm having some problems positioning it so that the menu is in the same position in both Firefox and Internet explorer, and on various screen sizes. Does anyone have any tips for me here regarding positioning elements such as this so that they appear in the same position no matter what the operating system variables? For reference I'm using the code from he http://www.cssplay.co.uk/menus/ultimate.html Any help kindly appreciated. Andy Hi Everyone I have created a design in CSS and HTML but it appears differently in all of the browsers that I have tested it on can anyone take a look and tell me where I am goin wrong? HTML 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" xml:lang="en" > <head> <title>{sitename} - {title}</title> {metadata} {stylesheet} </head> <body> <div class="wrapper"> <div id="hometext" style="background-color: transparent">{content}</div> <div class="mainbody" style="background-color: transparent"> <div class="headermenu"><a href="http://live.orotor.co.uk">Home</a> | <a href="http://live.orotoro.co.uk/index.php?page=stock">Stock</a> | <a href="http://live.orotoro.co.uk/brochure.html">Brochure</a></div> <div class="headerlogo"><img src="img/logo.gif" border="0" /></div> <div class="washingline"><img src="img/washingline.png" border="0" usemap="#Stock" /> <map name="Stock" id="Stock"> <area shape="poly" coords="47,151,129,159,136,96,142,98,156,82,141,56,115,46,82,43,55,45,33,71,44,86,52,88" href="#" alt="Apply here for Credit!" /> <area shape="poly" coords="199,182,282,187,283,123,289,125,306,106,285,81,262,74,228,75,202,80,180,105,194,122,198,118,200,121" href="#" alt="Our Garment Specifications" /> <area shape="poly" coords="384,196,467,193,465,130,471,130,483,112,463,88,438,82,407,82,380,90,360,115,373,132,381,131" href="#" alt="Look at our Wonderful colours" /> <area shape="poly" coords="627,181,700,143,671,86,678,86,682,61,652,50,627,55,598,69,578,89,570,121,591,130,598,126" href="#" alt="See our latest stock levels" /> </map> </div> <div style="position: absolute; top: 530px; height: 99px; width: 793px; margin: 0 auto;"><img src="img/footerbanner.png" border="0" /></div> </div> </div> </body> </html> CSS Code: body { margin: auto; font-family: Arial, Helvetica, sans-serif; font-size: 12.5px; font-weight: 600; overflow: hidden; } a { text-decoration: none; color: #000000; } input { height: 20px; width: 250px; border: 1px solid #e7ca3c; background-color: transparent; color: #000000; } textarea { height: 100px; width: 249px; border: 1px solid #e7ca3c; background-color: transparent; color: #000000; } a:hover { text-decoration: none; color: #e7ca3c; } .wrapper { margin: 25px auto; width: 794px; height: 748px; text-align: center; overflow: hidden; } .mainbody { width: 794px; height: 748px; background-image: url(img/background.gif); background-position: center; background-repeat: no-repeat; background-attachment: fixed; border-top: 1px solid #e7ca3c; } .headerlogo { width: 368px; height: 134px; float: left; clear: right; margin: 5px; position: absolute; background-color: transparent; } .headermenu { width: 300px; float: right; margin: 5px; padding: 59px 0px 59px 59px; position: relative; text-align: right; } .washingline { width: 793px; height: 217px; position: absolute; top: 260px; } #hometext { position:absolute; left:250px; top:189px; width:729px; height:153px; z-index:1; } Any help would be really appreciated as I am really flumoxed here. Best Justin I know there are a lot of articles lying around about this problem, but im having trouble with css layout for a site im working on, in IE6.0 the site displays as it should do. in Opera 7.23 + 7.11 the site displays with the main text sitting on the logo for the page, in firefox it displays as it does in opera. I am using includes for the full page with no html in the index.php page, i have tried this without includes bur get the same problems as before. the site addy is: http://www.kptspanishproperties.org.uk any help wpuld be great, also im not using tables just using css for all the layout needed I'm creating a new website, but it's not my field of expertise so i really need some help with CSS menus. I've integrated a drop down menu into the front page and the gallery menu into gallery page Gallery seems to be working fine in firefox 3, but in IE6 it's a bit messed up. With front page i dont have any more patience to work on it. Please help!, I can offer a compensation for that. http://64.232.240.200/new.html This site works well in Mozilla. There are spacing discrepancies between loads with Mozilla and latest Internet Explorer. The space under headings in the Main section differs between them, and there are gaps in the newsboxes where the background image runs uninterrupted on Mozilla. Internet Explorer Mac v5 does horrible things as can be seen in <a href="http://64.232.240.200/mac_ie5_screen.jpg">this screenshot</a>. (Colors have been changed slightly since this screenshot was taken, but you get the idea.) Any help is appreciated. I have been developing some dropdown menus loosely based on Patrick Griffiths "Suckerfish" example (see http://www.alistapart.com/articles/dropdowns/) and I have a prototype mostly working. The code is simple and is included in full below. However I see two problems with this that I can't sort out. First, in IE (6.0.2800) the dropdown is offset significantly from the left edge of the upper menu cell. In Mozilla (1.7.5) it's fine. I can't figure out why -- any ideas? I want it right underneath, not offset. Also, in Mozilla the dropdowns have a 1-pixel space at the right edge between the background and the border. Also a mystery ... Thanks for any comments / thoughts. Tom ======================================================== Code: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <head> <title>Test</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <style type="text/css"> body { font-family: arial, helvetica, serif; background: white url(images/ddbg3.gif) no-repeat 6000px 6000px; margin-left: 1em; } .mainlist { list-style: none; padding: 0; margin: 0; } .mainitem { float: left; position: relative; width: 120px; text-align: center; cursor: hand; padding: 0; border-top: 1px solid green; border-left: 1px solid green; border-bottom: 1px solid green; } .mainitem a { font-weight: bold; color: green; text-decoration: none; } .mainitemlast { border-right: 1px solid green; } .mainlist li:hover ul { display: block; left: 0; } li.over ul { display: block; left: 0; } .sublist { display: none; position: absolute; float: left; top: auto; font-weight: normal; background-color: #CCCCFF; width: 150px; padding: 0; } .subitem { display: block; float: left; position: relative; left: 0; width: 100%; border-top: 1px solid blue; border-left: 1px solid blue; border-right: 1px solid blue; } .subitemlast { border-bottom: 1px solid blue; } .subitem a { display: block; font-weight: normal; color: #060; padding: 5px; } .subitem a:hover { background-color: #EEEEFF; } </style> <script type="text/javascript"><!--//--><![CDATA[//><!-- startList = function() { if (document.all&&document.getElementById) { navRoot = document.getElementById("nav"); for (i=0; i<navRoot.childNodes.length; i++) { node = navRoot.childNodes[i]; if (node.nodeName=="LI") { node.onmouseover=function() { this.className+=" over"; } node.onmouseout=function() { this.className=this.className.replace(" over", ""); } } } } } window.onload=startList; //--><!]]></script> </head> <body> <div id="content"> <br> <ul class="mainlist" id="nav"> <li class="mainitem"> <div><a href="">Option 1</a></div> <ul class="sublist"> <li class="subitem"><a href="">Subitem 1</a></li> <li class="subitem"><a href="">Subitem 2</a></li> <li class="subitem"><a href="">Subitem 3 is longer</a></li> <li class="subitem subitemlast"><a href="">Subitem 4</a></li> </ul> </li> <li class="mainitem"> <div><a href="">Option 2</a></div> <ul class="sublist"> <li class="subitem"><a href="">Subitem 1</a></li> <li class="subitem"><a href="">Subitem 2</a></li> <li class="subitem"><a href="">Subitem 3 is longer</a></li> <li class="subitem subitemlast"><a href="">Subitem 4</a></li> </ul> </li> <li class="mainitem mainitemlast"> <div><a href="">Option 3</a></div> <ul class="sublist"> <li class="subitem"><a href="">Subitem 1</a></li> <li class="subitem"><a href="">Subitem 2</a></li> <li class="subitem"><a href="">Subitem 3 is longer</a></li> <li class="subitem subitemlast"><a href="">Subitem 4</a></li> </ul> </li> </ul> </div> </body> </html> i have a web site that i am redesigning and the redesign is @ http://cometosandiego.com/weekendvisit/index.php it shows up GREAT in firefox screwed in opera and COMPLETLY out of wack in IE 6 and 7 what to do???? thanks Anyone have any recommendations on a good program to check cross browser stuff. I am tired of having to open every browser up to check my sites. Also, anyone know any good links for getting better at coding for cross browser CSS? Thanks! Hi; I don't mind writing straight CSS with a text editor; my big problem is cross-browser compatibility -- getting all those tweaks for everything you do to include ie 5, 6 & 7 (I guess we can drop 5 by now). To that end, I don't object to using an IDE or other tool to develop cross browser CSS. So my question is, what is/are the best resources available to handle the cross-browser issues; from broken box model, etc. ** I know about ie7-js from Dean Edwards, but I don't know how well that works. ** I know about some CSS IDE's like Aptana & Stylizer; but again I don't really know how well they handle these issues. ** And I would like to hope there are some sites out there with total references that tells you everything you need to know about cross browser CSS, though all I've found so far are piecemeal articles; how to handle this or that aspect. So in short, I don't expect one magic bullet (though that would be nice), but I'm looking for pointers to and evaluations of various resources that could be maybe used together to make this problem a little easier. Thanks I am having problem making this cross browser friendly Code: /* Div Structure */ #heading { margin: 0; position: relative; top: -20px; background-color:#0066CC; } #search { float: left; } #img { float:left; } #text { float:right; } #phone { position: relative ; float: right ; top: 15px ; right: 10px } #head { margin: 5px ; padding: 0; height: 195px; background-color: #FDFCFF; border: solid; border-color: #0066CC; border-width: 2px; background-color: #FDFCFF; } #headnav { float: right ; margin: 100px 17px 5px 10px; padding: 0; } #sidebar { float: left ; background-color:#FDFCFF; border-width:2px; border-style:solid; border-color: #0066CC; padding: 10px; width: 170px; margin: 2px; margin-top: 5px; height: 530px ; } #mainpage { float: right; position:relative; width: 730px ; right: -5px; left: -5px; border: solid; border-color: #0066CC; border-width: 2px; background-color: #FDFCFF; margin-top: 5px; } /* Side Bar */ #sidebar h3 { color:black; font-size: 11px; font-weight: normal; letter-spacing: 0.2em; margin: 5px; padding: 0px; text-transform: uppercase; border-bottom:dashed; border-bottom-color:black; border-width: 1px; } #sidebar ul, #sidebar ol { list-style: none; margin: 0; padding: 0; } #sidebar li { margin: 0; list-style:none; padding: 0; font-family:Arial, Helvetica, sans-serif; font-size:12px; } #sidebar a { color: #9999FF; text-decoration:none; } #sidebar a:hover { color: black; text-decoration:underline; } #sidebar div { margin: 20px 0; padding: 0; } /* Header Style */ #head h1 { font-family:Verdana, Arial, Helvetica, sans-serif ; letter-spacing: 0.5em; font-size: 2em; color: black; } #head a { color: black; text-decoration: none; } /* Head Nav */ #headnav a { color: black; text-decoration:none; } #headnav a:hover { text-decoration:underline; } #headnav p { color:black; font-family: Verdana, Arial, Helvetica, sans-serif; font-size:0.1em; } /* Main Page */ #mainpage img { padding: 10px; } #mainpage h2 { font-family: Verdana, Arial, Helvetica, sans-serif; color:black; letter-spacing: 0.5em; font-style: bold ; border-bottom: solid; border-bottom-color:#0066CC; border-bottom-width: 2px; } #mainpage p { font-family: Arial, Helvetica, sans-serif; font-size: 12px; } #mainpage li { font-family:Arial, Helvetica, sans-serif; font-size: 12px; } #mainpage h3 { font-family:Verdana, Arial, Helvetica, sans-serif; border-bottom: dotted; border-bottom-color: black; border-bottom-width: 1px ; latter-spacing: 0.2 em; font-size:18px; } #mainpage a { color: #910B2D; text-decoration:none; } #mainpage a:hover { color:silver; text-decoration:underline; } /* Phone */ #phone p { color: black ; font-family: Arial, Helvetica, sans-serif; font-size: 18px ; } /* Heading's */ #heading h2 { color: white; } Hi All Can anyone please tell me where am I going wrong in code below it fairly straight forward, Style switcher works fine. The problem is When I'm using Firefox background image doesn't show but there no problem in IE. why???? Thanks Zed 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> <script type="text/javascript" src="styleSheetSwitcher.js"></script> </head> <body><center> <div id="main">Hello <div id="centerbox">world</div> </div></center></body> </html> css code Code: #main { position: relative; background-image:url(images/Driving_bkg3.gif); background-repeat: no-repeat; height: 100%; left: 5%; } #centerbox { margin: -20% 3% 0 40%; padding: 0%; width: 41%; height: auto; background-color:#C9F; } Okay, I'm about 6 steps into an effort to redo a section of my site... And while I swear I started out using a DIV/CSS based layout that worked in ALL browsers suddenly that is no longer the case. What I'm trying for is a navigation bar that stays fixed to the left... to the right of it are esentially 4 stacked areas: 1) the top header should stay glued to the top. 2) a middle content area that should flex reletive to the things around it 3) the second-from the bottom thing stays glued to the bottom, but has a bottom margin to place it above the footer. 4) the bottom footer should stay glued to the bottom. It works in all of my Mac browsers (Safari, Firefox, IE) as well as Firefox for windows. But IE 6.x for Windows insists on displaying all of the right-side elements way down the page... below the end of the left navigation. I simply can not force it to float/wrap to the right. Here is what I've got: http://digipix.jeffntom.com/TEMPLATE_UI-5.php Ignore the whiz-bang JavaScript stuff displaying the images, etc... and help me figure out what's up with my DIV/CSS? Here is the Div structu html4strict Code: Original - html4strict Code <div id="leftnav"> ...leftnav stuff... </div> <div id="rightbody"> <div id="header"> 1) Right-Top: ...header area... </div> <div id="content"> 2) Right-Middle: ...large image area... </div> <div id="thumbnails"> 3) Right-Lower: ....image thumbnail area... </div> <div id="footer"> 4) Right-Bottom: ...footer area... </div> </div> <div id="leftnav"> Here is the CSS: css Code: Original - css Code #leftnav { margin: 0; padding: 0; position: fixed; top:0px; width: 200px; bottom: 1px; // this locks the div to the browser bottom (minus 1px) float: left; background:#cccccc; valign: bottom; } /* this is a container that holds everything except the left navitation */ #rightbody { /* width: 100%; */ } #header { position: fixed; top: 0px; margin-left: 212px; margin-right: 0px; background: #ffffff; } #content { margin-top: 60px; margin-left: 212px; margin-right: 0px; background: #ffffff; } #thumbnails { position: fixed; bottom: 51px; margin-left: 210px; margin-right: 10px; background: #ffffff; } #footer { position: fixed; bottom: 0px; margin-left: 200px; margin-right: 10px; background: #ffffff; }
Hello, My pages all validate XHTML 1.0 Strict. My CSS Validates 2.1 ...except when I uploaded it then I get this error fives times: Parse Error opacity=0) Anyway, I thought by creating valid pages most browsers would render them correctly ----WRONGE! It seems IE 6 compresses my pages just enough to make the center column jump down under the two side columns, creating a big hole at the top. In IE 5.5 the pages look like a wild dog completely mangle them. FireFox can't seem to understand Javascript and my picture fader screen is blank and the Nav Bar is always on. Seems IE 7 is the only one who can get it right. Thank goodness for Microsoft! I was wondering how to resolve these problems. Seems I read somewhere that one could create different stylesheets for different browsers and use javascript to run them. I know nothing about javascript except how to paste it in. But I need someway to get my pages to work in FireFox and IE 6 at least. The name of the site is mybelovedangels dot com. Any Suggestions? Thanks I'm designing a site with a combination of css and tables and I've run into some issues w/IE. I've got some content in a nested table <table id="content"> <tr> <td> Content... </> </> </table> and in my style sheet i have #content{ padding-left:20px; ... } Firefox recognizes this property just fine and displays the table slightly indented, but IE seems to completely miss it. I have figured out a few workarounds, but they end up causing more problems and there are also other thigns that IE has been missing.. Does anyone know what might be causing this? ALSO i have a <div id=divider> inside a td w/css props as width:1px and height:100% and background-color:#000000. again, firefox recognizes this and displays a black line that is the height of the td and 1 px wide, but IE displays a little midget line thats like 10px tall instead of the entire height of the cell. wtf? Ok, so I've having some problems getting a webpage I'm designing looking good (I'm better at the "behind the scenes" coding, not so much the visual part). Anyway, I'm having some problems in Firefox and even more in IE, so here goes. In Firefox I want it to extend all the way to the bottom of the page, I tried adding "min-height:100%" to the container's styles, but that doesn't work. Can I not use a percent for the min-height? If I directly declare the height to be 100%, then the body can expand outside of the container rather than the container expanding with it. I also want to make sure that the body is always completely filling the container. The page in question is he http://www.magicsoftinc.com/michigans_edition/ My styles are below and you can view the page source or use Firebug to see the elements I'm talking about Code: a:link { color:black; text-decoration:underline; } a:active { color:black; text-decoration:none; } a:hover { color:black; text-decoration:none; } a:visited { color:black; text-decoration:underline; } body { background-color:#BBCCFF; font-family:Calibri, Arial, Helvetica, sans-serif; margin-bottom:0; margin-top:0; } div { border:0px solid #FF0000; border-top-width:0; } img { border-width:0; } .even{ background-color:#FFCCBB; } .odd { background-color:#BBCCFF; } .preload{ display:none; left:-9001px; position:absolute; top:-9001px; } #background { height:100%; left:0; margin:0; overflow:hidden; padding:0; position:absolute; top:0; width:100%; z-index:-9001; } #backgroundLeft{ position:fixed; top:0; left:0; height:100%; } #backgroundRight{ position:fixed; top:0; right:0; height:100%; } #body { background-color:#FFFFFF; color:#000000; min-height:250px; } #container { border:1px solid black; border-bottom-width:0; border-top-width:0; height:100%; margin:0 auto 0 auto; min-height:100%; min-width:760px; width:95%; } #diggThis { background-color:transparent; margin-left:-27px; z-index:-9001; } #footer { background-color:#FFFFFF; text-align:center; font-size:small; } #header { background-color:#000000; height:271px; } #leftMenu { background-color:#BBCCFF; float:left; margin-right:4px; padding:4px; width:260px; } #main { min-width:500px; padding:4px; } #main .title { font-size:xx-large; font-weight:bold; } #menu { background-image:url("images/menuGradient.png"); background-repeat:repeat-x; border-top:1px solid #7E7E7E; border-bottom:1px solid #4E4E4E; color:#FFFFFF; font-weight:900; height:35px; position:relative; top:-35px; } #menu a:link { color:white; text-decoration:underline; } #menu a:active { color:white; text-decoration:none; } #menu a:hover { color:white; text-decoration:none; } #menu a:visited { color:white; text-decoration:underline; } #menu .button { background-image:url("images/menuButtonUp_blue.png"); background-position:center; background-repeat:no-repeat; color:#FFFFFF; font-weight:600; height:35px; overflow:hidden; padding:0; text-align:center; width:106px; } #menu table { padding:0; text-align:center; width:100%; } #menu tr { padding:0; } #userPanel { position:absolute; right:3%; top:136px; width:200px; height:100px; background-color:#BBCCFF; } Okay, my layout is css, and the problem is with my footer, and bottom links. In mozilla, they look the way i want them to, but for IE, they are positioned too low, and the bottom links are unreadable. Take a look - www.funny-guys.com The Code: #bottomlinks { margin:0px 0px 20px 0px; padding:0px; font-size:10px; color:#999999; text-align:center; div#footer { margin: 0px 0px 12px 0px; font-size:60%; text-align:center; padding:0; } Thanks On this site http://www.freewaytransmissions.com I am having issues with the spacing on the navigation. The nav is an ul and I used inline css for spacing the links apart, but as you see in Chrome they are spaced correctly, but in IE they are not aligned correctly. If someone can shed some light I'd appreciate it. Thanks. Tom |