Alrighty, for the errors:
line 2 column 1 - Warning: missing <!DOCTYPE> declaration
line 39 column 1 - Warning: missing </font> before <div>
line 42 column 1 - Warning: inserting implicit <font>
line 216 column 3 - Warning: replacing <p> by <br>
line 216 column 3 - Warning: inserting implicit <br>
line 6 column 1 - Warning: <script> inserting "type" attribute
line 38 column 1 - Warning: <body> attribute "text" has invalid value "lightgrey"
line 51 column 1 - Warning: <img> lacks "alt" attribute
line 135 column 1 - Warning: <img> lacks "alt" attribute
line 179 column 1 - Warning: <img> lacks "alt" attribute
line 213 column 6 - Warning: <img> lacks "alt" attribute
line 39 column 1 - Warning: trimming empty <font>
Info: Document content looks like HTML 4.01 Transitional
The first, and last, errors, are because you haven't defined a doctype. It's something that goes at the very top of the html to tell a browser how to render the site (different doctypes use different rules if you're anyone except IE).
Pop this into the code (very first thing):
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
The next is because you're trying to wrap a
Block (div) tag in an
inline (font) tag. You need to either use CSS to specify the font, or put the font inside the div tag.
It looks like you're trying to set the font for the whole page.
So, to do that, you actually want to set the font of the 'body' tag.
Add:
within the 'style' property of the body tag, then get rid of the font tags you have.
That takes care of the next error "inserting implicit <font>"
"replacing <p> by <br>"
I'm not sure of why this error occurs. It appears that it doesn't like header tags (h2 & h4) being wrapped in a block element (p).
Try simply breaking it down if you need the space (<br />'s).
"inserting "type" attribute"
You need to tell the browser what type of script it is.
To do this, simply add:
"<body> attribute "text" has invalid value "lightgrey""
I don't even know what the 'text' attribute is, care to explain?
"<img> lacks "alt" attribute"
As GatorHex mentions, it means anyone with a text browser, or a blind person, would hate your site... They can't navigate it!
Just add:
alt="Image Description Here"
into each img tag.
Also, I noticed you're not closing off your image tags.
In HTML 4+, all tags need to be closed, regardless.
To do that for tags that don't actually have a closing, you make it close itself.
For example, a <br> tag needs to be closed, so to close it within itself, you do:
<br />
(as you saw above when talking about <p>
.
So, to do it for img, it would be:
<img src="" alt="" />
Once you give the page a Doctype, you'll see more errors pop up as you need to adhere to the HTML format you decide on (the format in the doctype I gave you is 4.01).
There's plenty of rules you need to follow to be strict on your website, sticking to rules provided.
Unfortunately, when the internet was young, noone cared, so now all browsers have to be able to render code that is simply absurd.
It's kind of like if DBP didn't throw errors, and simply did its best with
any code you give it as long as it looks remotely like english...
I suggest you grab the Webdeveloper & Html Validator extensions for Firefox, and use the "View Page Source" option in FF so you can see exactly what's going on