IE 7 not playing well with CSS - Solved

For discussion and questions related to CMS Specific templates and stylesheets (CSS), and themes. or layout issues. This is not a place for generic "I don't know CSS issues"
Locked
superK

IE 7 not playing well with CSS - Solved

Post by superK »

****The image was too wide and IE was dropping it down for some reason. All's well that ends well!*****

I'm building a site for a client using CMS 1.0.2 "Maui". I've basically been using the included template "Left sidebar + 1 column" and making changes as I need them.

Building the site on a Mac and testing on Firefox everything is great. When I jump over to test on IE 7 (on PC of course) the image on the homepage starts about 4 inches below where it's suppossed to. I've been tweaking the CSS for 2 days and thought I fixed it once, but alas, that's not so.

The work in progress can be viewed here: http://www.csapostfalls.com/site/

Here's the CSS I've been working with:

/*****************
browsers interpret margin and padding a little differently,
we'll remove all default padding and margins and
set them later on
******************/
* {
margin:0;
padding:0;
}

/*
Set initial font styles
*/
body {
  text-align: left;
  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
  font-size: 75.01%;
  line-height: 1em;
}

div {
  font-size: 1em;
}

img {
  border: 0;
  vertical-align: top;
  height: auto;
}

a,
a:link
a:active {
  text-decoration: underline;
  background-color: inherit;
  color: #18507C;
}

a:visited {
  text-decoration: underline;
  background-color: inherit;
  color: #18507C;         
}

a:normal:hover {
  text-decoration: none;
  background-color: #C3D4DF;
  color: #385C72;
}

a.footer:hover {
  text-decoration: underline;
  background-color: none;
  color: none;
}

/*****************
basic layout
*****************/

body {
  background: #ccc url(uploads/images/back.png) repeat-x;
  margin:1em;    /* gives some air for the pagewrapper */
}

div#pagewrapper {
  border: 1px solid black;
  margin: 0 auto;      /* this centers wrapper */
  width: 770px;
  background-color: #FFFFFF;
  color: black;
}

/*** header ***
we will hide text and replace it with a image
we need to assign a height for it so that the image wont cut off
*/
div#header {
  height: 110px;    /* adjust according your image size */
  background: #ffffff;         
}

div#header h1 a {
/* you can set your own image here */
  background: #ffffff url(uploads/images/headerNEW.png) no-repeat;
  display: block;
  height: 110px;            /* adjust according your image size */
  text-indent: -999em;  /* this hides the text */
  text-decoration:none; /* old firefox would have shown underline for the link, this explicitly hides it */
}

/* position for the search box */
div#search {
  float: right;
  width: 30em;    /* enough width for the search input box */
  text-align: right;
  padding: 0.6em 0 0.2em 0;
  margin: 0 1em;
}

div.breadcrumbs {
  padding: 1em 0 1.2em 0; /* CSS short hand rule first value is top then right, bottom and left */
  font-size: 90%;
  margin: 0 1em; 
  border-bottom: 1px solid #000;
}

div#content {
  margin: 1.5em auto 2em 0;  /* some air above and under menu and content */
}

div#main {
  margin-left: 18em;
  margin-right: 2em;
}

div#sidebar {
  float: left;        /* set sidebar on the left side. Change to right to float it right instead. */
  width: 17em;  /* sidebar width, if you change this please also change #main margins */
  display: inline;  /* FIX IE double margin bug */
  margin-left: 0;
}

div#footer {
  clear: both;      /* keep footer below content and menu */
  color: #fff;
  background-color: #4682B4;
}

div#footer p {
  font-size: 9px;
  padding: .8em;      /* some air for footer */
  text-align: center;  /* centered text */
  margin: 0;
}

div#footer p a {
  color: #fff; /* needed becouse footer link would be same color as background otherwise */
}

/* as we hid all hr for accessibility we create new hr with extra div element */
div.hr {
  height: 1px;
  padding: .2em;
  border-bottom: 1px solid #ccc;
  margin: .2em;
}

/* relational links under content */
div.left49 {
  width: 49%; /* 50% for both left and right might lead to rounding error on some browser */
}

div.right49 {
  float: right;
  width: 49%;
  text-align: right;
}

/********************
CONTENT STYLING
*********************/
div#content {

}

/* HEADINGS */
div#content h1 {
  font-size: 2em; /* font size for h1 */
  line-height: 1em;
  margin: 0;
}
div#content h2 {
color: #1B5C9C;
font-size: 1.2em;
text-align: left;
/* some air around the text */
padding-left: 0.5em;
padding-bottom: 1px;
/* set borders around header */
border-bottom: 1px solid #D3CCB7;
border-left: 1.1em solid #D3CCB7;
        line-height: 1.5em;
/* and some air under the border */
        margin: 0 0 0.5em 0;
}
div#content h3 {
  color: #1B5C9C;
  font-size: 1.1em;
  line-height: 1.3em;
  margin: 0 0 0.5em 0;
}
div#content h4 {
  color: #1B5C9C;
  font-size: 1.2em;
  line-height: 1.3em;
  margin: 0 0 0.25em 0;
}
div#content h5 {
  color: #1B5C9C;
  font-size: 1.1em;
  line-height: 1.3em;
  margin: 0 0 0.25em 0;
}
h6 {
  color: #1B5C9C;
  font-size: 1em;
  line-height: 1.3em;
  margin: 0 0 0.25em 0;
}
/* END HEADINGS */

/* TEXT */
p {
  font-size: 1em;
  margin: 0 0 1.5em 0; /* some air around p elements */
  line-height: 1.4em;
  padding: 0;
}

blockquote {
  border-left: 10px solid #ddd;
  margin-left: 10px;
}
strong, b {
/* explicit setting for these */
  font-weight: bold;
}
em, i {
/* explicit setting for these */
  font-style:italic;
}

/* Wrapping text in tags. Makes CSS not validate */
code, pre {
white-space: pre-wrap;      /* css-3 */
white-space: -moz-pre-wrap;  /* Mozilla, since 1999 */
white-space: -pre-wrap;      /* Opera 4-6 */
white-space: -o-pre-wrap;    /* Opera 7 */
word-wrap: break-word;      /* Internet Explorer 5.5+ */
font-family: "Courier New", Courier, monospace;
font-size: 1em;
}

pre {
  border: 1px solid #000;  /* black border for pre blocks */
  background-color: #ddd;
  margin: 0 1em 1em 1em;
  padding: 0.5em;
  line-height: 1.5em;
  font-size: 90%;
}

/* Separating the divs on the template explanation page, with some bottom-border */
div.templatecode {
  margin: 0 0 2.5em;
}

/* END TEXT */

/* LISTS */
/* lists in content need some margins to look nice */
div#main ul,
div#main ol,
div#main dl {
  font-size: 1.0em;
  line-height: 1.4em;
  margin: 0 0 1.5em 0;
}

div#main ul li,
div#main ol li {
  margin: 0 0 0.25em 3em;
}

/* definition lists topics on bold */
div#main dl dt {
  font-weight: bold;
  margin: 0 0 0 1em;
}
div#main dl dd {
  margin: 0 0 1em 1em;
}

div#main dl {
  margin-bottom: 2em;
  padding-bottom: 1em;
  border-bottom: 1px solid #ccc;
}


/* END LISTS */


The weird part to me is that the layout (image above text) is basically the same on the Directions page but that renders fine in IE 7. Also, I got the image to layout right in "quirks" mode but that doesn't really help anybody.

Here's the HTML that I believe is where it's happening:


       

        Home
       
        CSA of Post Falls, known locally as “Cardiovascular Services of Post Falls”, is dedicated to serving our patients with
        compassion and with the highest quality of care using cutting-edge technology.



Thanks for any help anyone can give, I think CMS made simple is a very powerful system and I've enjoyed using it except for this silly problem (which is more Microsoft's fault that the CMS).

Thanks!
       
Last edited by superK on Thu Jan 04, 2007 6:12 pm, edited 1 time in total.
Locked

Return to “Layout and Design (CSS & HTML)”