HTML + CSS: el ancho 'a' no funciona

Tengo el siguiente código:

Parte CSS:

<style type="text/css">
    .menu
    {
        width:200px;
    }

    .menu ul
    {
        list-style-image:none;
        list-style-type:none;
    }

    .menu li
    {
        margin:2px;
    }

    .menu A
    {
        height:25px;
        width:170px;
        background:url(./images/button-51.png);
        padding:2px 5px ;
    }

    .menu A:link
    {
        height:25px;
        width:170px;
        background:url(./images/button-51.png);
        padding:2px 5px ;
    }
</style>

Parte HTML:

Todo funciona bien, pero cuando agrego el elemento 'DOCTYPE' al comienzo del documento HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

el ancho del elemento 'a' no se tiene en cuenta.

Pregunta 1: ¿Por qué?

Pregunta 2: ¿Cómo arreglar eso?

¡Muchas gracias!

Respuestas a la pregunta(7)

Su respuesta a la pregunta