Before fixing the text problem, here are two other quick issues to fix. These are easy but important.
You have a doctype, but it does not work the way you have it. This causes each browser to guess at your formatting and actually assumes some old style abuses that could even account for your differences with various browsers.
The reason it doesn't work is that doctypes are NOT html. That is why they come before the html tag. The doctype must be the very first item in your page. Not even a single space is allowed before it or the browser will assume you have started your html and will not read the doctype. You have inserted a comment first. You must remove it or move it down after the html tag (any html code must be inside the html tags).
Second, the html tag only supports the standard attributes xml:lang, dir and lang as far as I know. The following css is questionable and you do not have an id of html anyway, just html:
PHP Code:
#html,body {
background-color: white; /*Optional BG color when BG not viewed or loading*/
background-image: url(images/camobg.gif); /*Sets BG image of entire page*/
background-attachment: fixed; /*Determines how a BG image should scroll*/
padding:5px; /*Specifies distance between one or more sides of an elements content area and it's border*/
}
In any case, applying the css to the html would not do anything you have here more than just applying it to the body. And, this shows an ID for the html tag which it does not have.
Drop the html part and for the first line just put:
body {
Now for the text positioning issue. This is easy IF you know it but easily frustrating if you do not. I am not going to try to explain everything (like why the text now stays just in the center, etc.) just what you really need to know.
The basic problem is that you have two side columns each 140 pixels wide but no instructions in the css for the center column not to invade that space. If you put a border around the div you will see that the tag is extending all the way to the outside border even though the text doesn't. As a result, when you assign a margin or padding less than 140 pixels nothing shows up on screen. Here is how to fix your problem.
Your center column content area you have set up is a div which you have given a class name of "p." You have reasonably given the two outside columns an id suggesting their use. I recommend revising this content area's name to a div with an id of "content" or something of the sort but I will proceed with a class of "p" because that is what you have and it will work.
In your css, as it is, you can add this code:
PHP Code:
.p {
margin: 0px 140px 0px 140px;
padding: 0px 20px 0px 20px;
}
The margin settings will bring the sides of the content area into the lines you have on the side columns and the padding will give you some space between the line and your center column text.
I have tried this on your code and it works. You can adjust the padding to suit your taste.