Ok - I finally managed to get this to a point where the site would let me post it.
Doctype links mangled for posting… also “.” replaced with " dot " on many links.
The footer problem is evident only in print/print preview.
The ul/nested ul image problem is only evident on screen.
Both in IE8
Here’s the main page template: (it uses php, but only for some date stuff and the nav menu import)
Name it test dot php if you’re saving it to disk
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "www dot w3 dot org/TR/xhtml1/DTD/xhtml1-strict dot dtd">
<html xmlns="www dot w3 dot org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Expires" content="Fri, 31 Dec 1999 23:59:59 GMT" />
<link rel="stylesheet" type="text/css" href="../test.css" />
<!--[if (lte IE 6)|(gte IE 8)]>
<style type="text/css">
#outer {height:100%; display:table;}
</style>
<![endif]-->
<!--[if IE 6]>
<style type="text/css">
@media print{#footer{position:absolute;left:0;bottom:0;}}
</style>
<![endif]-->
</head>
<body>
<div id="outer">
<div id="inner">
<div id="header"><a href="#" name="top"></a></div>
<div id="header_rule"><!--IE6Hack--></div>
<div id="contentwrapper">
<div id="content">
<div class="innertube">
<p id="date" class="novis"><?php echo date('D., F j, Y'); ?></p>
<img src="../dummy.gif" class="pageart" width="180" height="250" alt="Artwork" />
<p class="sectionhead">Section Heading Here</p>
<p class="bodytext"><span class="heading1">Body Heading Here (if required)</span><br />
Content Here</p>
<p class="bodytext">Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi eget elit. Donec pulvinar. Fusce non est ac libero blandit laoreet. Pellentesque iaculis erat. Cras ullamcorper. Vivamus et nibh. Quisque vel leo vitae felis hendrerit fermentum. Donec consectetuer, nunc id mattis elementum, lacus ligula fringilla leo, quis varius lacus turpis sit amet massa. Morbi accumsan ante suscipit ipsum. Curabitur non tellus nec metus venenatis iaculis. Donec tempor nunc. Mauris sit amet erat. Vestibulum sed nulla ac nisl dapibus porta. Praesent a nisi quis nisl cursus tempor. Praesent semper laoreet nisl. Donec id urna.</p>
<p class="bodytext">Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Morbi eget elit. Donec pulvinar. Fusce non est ac libero blandit laoreet. Pellentesque iaculis erat. Cras ullamcorper. Vivamus et nibh. Quisque vel leo vitae felis hendrerit fermentum. Donec consectetuer, nunc id mattis elementum, lacus ligula fringilla leo, quis varius lacus turpis sit amet massa. Morbi accumsan ante suscipit ipsum. Curabitur non tellus nec metus venenatis iaculis. Donec tempor nunc. Mauris sit amet erat. Vestibulum sed nulla ac nisl dapibus porta. Praesent a nisi quis nisl cursus tempor. Praesent semper laoreet nisl. Donec id urna.</p>
<ul class="bodytext_ul">
<li>Blah blah blah yada yada yada</li>
<li>Blah blah blah yada yada yada:
<ul class="bodytext_ul_nested">
<li>Blah blah blah yada yada yada</li>
<li>Blah blah blah yada yada yada</li>
<li>Blah blah blah yada yada yada</li>
<li>Blah blah blah yada yada yada</li>
<li>Blah blah blah yada yada yada</li>
</ul>
</li>
<li>Blah blah blah yada yada yada</li>
</ul>
<div id="subnav" class="noprint"><a href="#top">top</a></div>
</div>
</div>
</div>
<div id="nav" class="noprint">
<div class="innertube noprint"><?php include 'navigation dot php'; ?></div>
</div>
</div>
</div>
<div id="footer">Copyright © 2007-<?php echo date('Y'); ?> Company Name<span class="noprint"> | <a href="#">Disclosures</a></span></div>
</body>
</html>
Here’s the navigation “page” (it requires php):
Name it navigation dot php if you’re saving it to disk.
<?php
// Variable Initialization
$menu_array[0] = "home";
$menu_array[1] = "page1";
$menu_array[2] = "page2";
$menu_array[3] = "page3";
$menu_array[4] = "page4";
$menu_array[5] = "page5";
$menu_array[6] = "page6";
$menu_array[7] = "template"; // for testing only - remove to publish
$page_array[0] = "index dot php";
$page_array[1] = "page1 dot php";
$page_array[2] = "page2 dot php";
$page_array[3] = "page3 dot php";
$page_array[4] = "page4 dot php";
$page_array[5] = "page5 dot php";
$page_array[6] = "page6 dot php";
$page_array[7] = "test dot php"; // for testing only - remove to publish
// Get the current URL
$current_url = $_SERVER["REQUEST_URI"];
// Truncate the URL removing the leading :/)
$file = substr(strrchr($current_url, "/"), 1);
// When there is no filename use the default name
if($file == "") {
$file = "default dot php";
}
// If the filename doesn't end with php use the default name
if(substr($file, -3, 3) != "php") {
$file = "default dot php";
}
// Generate the Menu
// change 7 to 6 below to publish due to removal of template from array
echo '<div id="menu" class="noprint">'; // Menu Div
for ($counter = 0;$counter <= 7 /*6*/ ;$counter += 1) {
if ($file == $page_array[$counter]) {
echo '<span class="links_nav-active">' . $menu_array[$counter] . '</span><br />';
} else {
echo '<a href="../' . $page_array[$counter] . '" class="links_nav">' . $menu_array[$counter] . '</a><br />';
}
}
echo '</div>'; // End Menu Div
// Logo area
echo '<div id="navlogo" class="noprint"><img src="../../images/dummy.gif" width="135" height="55" alt="logo" /></div>';
//Debug Output - uncomment to use
/*
echo '<small>Current URL: <br />' . $current_url . '<br /></small>';
echo '<small>file: <br />' . $file . '<br /></small>';
*/
?>
Here’s the main CSS: (stripped down some - removing non used items on this page)
Name it test dot css when saving.
/* Import CSS Reset to zero everything out */
@import url(reset.css);
/* ***Begin our Formatting*** */
*.hr {
width:98%;
margin:0 auto;
border:0px;
line-height:2px;
font-size:2px;
background-color:#333333;
}
*.hr hr {display:none}
a:link {text-decoration:none}
a:hover {color:#FF7600; text-decoration:none}
img {border:0px}
html, body {height:100%;}
html {background-color:#F5F5F5;}
body {width:1000px; margin:0 auto;}
/*Opera Fix*/
body:before {
content:"";
height:100%;
float:left;
width:0;
}
#outer {
width:1000px;
background-color:transparent;
margin:auto;
min-height:100%;
margin-top:-14pt;
}
#inner {width:1000px; float:left;}
#header {
height:117px;
background-color:#4C1601;
background-image:url(images/dummy.gif); /* image is 740px wide x 117px high */
background-repeat:no-repeat;
background-position:left top;
border-top:14pt solid #4C1601;
}
#header_rule {
height:4px;
background-image:url(images/dummy.gif); /* image is 740px wide x 4px high */
background-repeat:no-repeat;
background-position:left top;
background-color:#000;
text-align:center;
}
#footer {
font-family:Arial, Helvetica, sans-serif;
font-size:7pt;
color:#FFFFFF;
text-decoration:none;
background-color:#4C1601;
text-align:left;
text-indent:1.5em;
width:1000px;
margin:auto;
height:14pt;
line-height:14pt;
clear:both;
}
#footer a {
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:7pt;
color:#FFFFFF;
text-decoration:none;
}
#footer a:hover {color:#FF7600; text-decoration:none;}
#contentwrapper {
width:1000px;
min-height:100%;
margin:0;
background-image:url(images/dummy.gif); /* image is 740px wide x 95 px tall */
background-repeat:no-repeat;
background-position:left top;
background-color:#fff;
float:left;
}
#content {margin:0 0 0 156px; background-color:transparent; text-align:left;}
#date {
font-family:Arial, Helvetica, sans-serif;
font-size:8pt;
color:#777777;
text-transform:uppercase;
text-decoration:none;
text-align:center;
padding:1.5em 0 20px 0;
margin:0;
float:right;
}
#nav {
width:156px;
margin-left:-1000px;
text-align:left;
background-color:transparent;
float:left;
}
#menu {padding:1em 0 1em; background-color:transparent;}
#navlogo {text-align:center; border:none; margin:0; background-color:transparent;}
#subnav {
margin:0;
background-color:transparent;
padding-top:.75em;
padding-right:1em;
text-align:right;
clear:right;
}
#subnav a {
font-family:Arial, Helvetica, sans-serif;
font-size:8pt;
color:#4C1601;
text-transform:uppercase;
text-decoration:none;
letter-spacing:1px;
}
#subnav a:hover {color:#FF7600; text-decoration:none;}
.bodytext {
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:8.5pt;
line-height:12pt;
color:#333333;
padding-bottom:1em;
}
.bodytext_ul {
margin:0;
padding-left:2em;
padding-bottom:1em;
list-style-position:outside;
list-style-image:url(images/dummy.gif); /* image is 4px wide x 11px high
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:8.5pt;
line-height:12pt;
color:#333333;
}
.bodytext_ul_nested {
margin:0;
padding-left:3em;
list-style-position:outside;
list-style-image:url(images/dummy.gif); /* image is 4px wide x 11px high
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:8.5pt;
line-height:12pt;
color:#333333;
}
.innertube {margin:0 10px 10px 10px; background-color:transparent;}
.links_bodytext {
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:8.5pt;
font-weight:normal;
line-height:12pt;
color:#4C1601;
text-transform:none;
text-decoration:none;
}
.links_nav {
font-family:Arial, Helvetica, sans-serif;
font-size:7.5pt;
line-height:24px;
color:#333333;
text-transform:uppercase;
text-decoration:none;
letter-spacing:1px;
}
.links_nav-active {
font-family:Arial, Helvetica, sans-serif;
font-size:7.5pt;
line-height:24px;
color:#4C1601;
text-transform:uppercase;
text-decoration:none;
letter-spacing:1px;
}
.pageart {border:1px solid #666666; margin:0 0 10px 10px; float:right; clear:right;}
.sectionhead {
padding-top:.5em;
height:1.5em;
letter-spacing:1px;
font-family:"Times New Roman", Times, serif;
font-size:18pt;
font-weight:normal;
font-style:normal;
color:#4C1601;
text-decoration:none;
text-transform:capitalize;
}
/* ***Printing Rules*** */
@media print {
/* Hide everything we're not printing */
.noprint {display:none; margin:0; padding:0;}
.novis {visibility:hidden;}
/* Reformat the content for printing */
html {background-color:transparent;}
body, #outer, #inner, #contentwrapper, #footer {width:750px;}
#content {margin-left:0;}
#date {padding:0 0 5px;}
#contentwrapper {background-image:none; background-color:transparent;}
/* header and header_rule below perform gfx replacement to a simpler print header */
#header {
height: 40px;
background-color:transparent;
background-image:url(images/dummy.gif); /* this image is 530px wide x 40px high */
background-position:left top;
border-top:none;
}
#header_rule {background-image:none;}
/* footer below removes background color / alters text to black / places footer @ bottom of page in standards browsers */
#footer {color:black; background-color:transparent; position:fixed; bottom:0; left:0; border-top: solid black 1px;}
#outer {margin:0}
}
/* ***EOF*** */
Here’s the reset CSS:
Name it reset dot css when saving
/* Reset Reloaded - with thanks to Eric Meyer, et. al */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
outline: 0;
}
body {
line-height: 1;
color: black;
background: white;
}
ol, ul {
list-style: none;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
border-collapse: separate;
border-spacing: 0;
}
caption, th, td {
text-align: left;
font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: "";
}
blockquote, q {
quotes: "" "";
}