Voy a ir contra la corriente aquí y afirmar que el principio de separar el contenido del diseño (que justificaría las respuestas que sugieren usar CSS) no siempre se aplica a la altura y el ancho de la imagen.
Cada imagen tiene un alto y ancho original innato que se puede derivar de los datos de la imagen. En el marco del diseño de contenido vs., diría que esta información derivada de altura y ancho es contenido, no diseño, y por lo tanto debe representarse como HTML como atributos de elementos.
Esto es muy similar al texto alt
, que también puede decirse que se deriva de la imagen. Esto también respalda la idea de que un agente de usuario arbitrario (por ejemplo, un navegador de voz) debería tener esa información para relacionarla con el usuario. Como mínimo, la relación de aspecto podría ser útil ("la imagen tiene un ancho de 15 y una altura de 200"). Dichos agentes de usuario no necesariamente procesarían ningún CSS.
La especificación dice que los atributos width
y height
también se pueden usar para anular la altura y el ancho transportados en el archivo de imagen real. No estoy sugiriendo que se usen para esto. Para anular la altura y el ancho, creo que CSS (en línea, incrustado o externo) es el mejor enfoque.
Por lo tanto, dependiendo de lo que quiera hacer, debe especificar una y/o la otra. Creo que, idealmente, la altura y el ancho originales siempre se especificarían como atributos del elemento HTML, mientras que la información de estilo debería transmitirse opcionalmente en CSS.
recordar, especificando las propiedades altura y anchura podría conducir a problemas de escala impares. Normalmente, solo especificaría la propiedad que se requiere para que se ajuste a su diseño (generalmente el ancho), luego el navegador redimensionará la altura a las proporciones correctas. – Mauro