That ^ is the current code for the blog logo. In other words, it's an empty div with a background image. No search engine crawler can read the background image; hell, it's not even loaded. That should be a <h1> with the actual title inside. This is the way I implemented it on
my test forum:
Code: Select all
<h1><a href="./index.php" title="Board index">Test Forum</a></h1>
However, you don't see the actual text because I'm using a CSS tweak (
text-indent: -99999px) to displace it out of the screen. The logo is clickable however, and Google's crawler is happy because it knows more informations about the page and the semantic of the different elements. Oh and <h2> markups should be used for each post title. Right now, more meaningless <div>'s are used instead.
Another example, this time it's "semi-valid" HTML:
Code: Select all
<div id="nav">
<a href="http://openmw.org/">News</a>
<a href="http://openmw.org/media/">Media</a>
<a href="http://code.google.com/p/openmw/downloads/list">Downloads</a>
[etc...]
</div>
Putting <a> (which is an inline element) directly in a <div> is stupid. It needs to be in a <p> or a <ul>. Also, it's a good habit to always use the title property with links for better accessibility.
This last example is particularly funny, because it's just ridiculous: the various menus on the right of the blog are actually items (<li>) or a big list (<ul>). This makes
no sense at all! All this did was make the coding task more difficult because then you need to remove the list's default style: the preceding symbol, the margins and paddings, etc.
I didn't look at the rest of the source because I was afraid to discover more horrors.