Cita:
Iniciado por punk567 intentá al revés
<div class="xxx"><a href=""></a><div>
el tag <a> es de tipo inline, pero si con css le aplicas la propiedad display: block , se comportaría como elemento de bloque, le puedes dar width:100% y height:100% para que abarque el ancho y el alto del div que lo contiene
Muchas gracias por la ayuda, ya he solucionado el problema. Tanto el CSS como el HTML pasan el W3C Validator y ya se ve todo correctamente.