Außerdem entspricht dein Markup gemäß deines deklarierten Dokumenttyps und dessen Dokumenttyp-Definition (DTD) nicht der HTML-Spezifikation für
Inline-Elemente, die keine
Block-Elemente (in diesem Fall das
<div>) enthalten dürfen.
Ab "
HTML5" ist es zulässig, dass das
<a>-Element solche Block-Elemente umschliessen darf, aber nicht für "HTML 4.01", sowie "XHTML 1.0" und "XHTML 1.1".
The a element may be wrapped around entire paragraphs, lists, tables, and so forth, even entire sections, so long as there is no interactive content within (e.g. buttons or other links). This example shows how this can be used to make an entire advertising block into a link:
HTML:
<aside class="advertising">
<h1>Advertising</h1>
<a href="http://ad.example.com/?adid=1929&pubid=1422">
<section>
<h1>Mellblomatic 9000!</h1>
<p>Turn all your widgets into mellbloms!</p>
<p>Only $9.99 plus shipping and handling.</p>
</section>
</a>
<a href="http://ad.example.com/?adid=375&pubid=1422">
<section>
<h1>The Mellblom Browser</h1>
<p>Web browsing at the speed of light.</p>
<p>No other browser goes faster!</p>
</section>
</a>
</aside>
Stattdessen kannst du in deinem "XHTML 1.0 Transitional"-Dokument das
<a>-Element mittels CSS und der
display:block-Eigenschaft formatieren, damit es "Block-Level-Charakteristika" annimmt, sich im Textfluß also wie ein Block-Element verhält, und so seinen Inhalt mit
text-align:center in seinem Anzeigebereich horizontal zentrieren, was du derzeit mit dem
<div> und dem HTML-Attribut
align="center" bewerkstelligt hast.