IE 7 not playing well with CSS - Solved
Posted: Thu Jan 04, 2007 12:31 am
****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!
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!