Ok. Un purista.
De todas formas, es más correcto hacerlo con CSS que con HTML, por si te alivia la conciencia, ya que el ancho de un elemento no forma parte de la estructura sino del diseño/maquetación.
Alguien en este foro dijo alguna vez algo como que el HTML eran los huesos, CSS la piel, el lenguaje de lado servidor eran los músculos y javascript los anabolizantes.