2010-09-25 11 views
8

Estoy cargando un montón de img, y me gustaría que ocupen espacio en el documento, incluso si no están cargados, o aún no se completó la carga.Cómo forzar un <img> para aumentar el ancho, incluso si la imagen no está cargada

He intentado especificar el ancho y el alto (tanto como atributos propios, como dentro de un atributo de estilo), y encuentro frustrante que las imágenes no ocupen espacio si no se cargan.

Sin duda, debe haber una forma de forzar una img a dimensiones específicas, ** incluso si la imagen no se carga.

Gracias

Respuesta

10

Ciertamente es:

<img src="path/to/image.png" height="50" width="20" /> 

Además, la razón que especifica la anchura y la altura dentro del atributo style="/* css */" no funcionó es porque las imágenes son, por defecto, los elementos en línea . Si hubiera especificado display: block, la imagen habría aceptado los valores width y height.

Si se agrega, a la css/estilo:

display: inline-block; 

Se debe trabajar. No estoy seguro por qué Firefox no respeta los atributos de ancho/alto, pero aún así. Incluso IE, con un doctype definido debe respetar display: inline-block, ya que los elementos img son, de forma predeterminada, en línea de todos modos.

+0

@Andrew Vit, gracias por la edición. Accidentalmente lo hice mientras estaba agregando información al mismo tiempo que realizaba su edición. La revocación fue accidental y un descuido. Editado su edición de nuevo, donde pertenece! =) –

+0

Esto no funciona si la imagen no se carga. Al menos, en el último FF en Windows. – Sambo

+0

@Sambo, ni en Firefox 3.6.10 en Ubuntu 10.04. Ver edición, y [jsbin demo] (http://jsbin.com/ojocu3/3/), debería funcionar ahora. –

0

La respuesta simple: ajuste la imagen en un <div> con un ancho fijo.

<div style="width: 400px;"><img src="404.png" /></div> 

Si establece el relleno, etc frontera para 0, no se dará cuenta de que el div está allí.

+0

Entonces, ¿por qué ponerlo allí? El 'div' se contraerá para ajustar alrededor de la imagen * a menos que * it (el' div') esté configurado en 'display: block' o' inline-block'. Por lo tanto, sería mejor que simplemente especifique 'display: block;' (o 'inline-block') en los atributos' img', más 'img' accept' width' y 'height' por algún motivo. –

+0

No, el 'div' * no * se contraerá para caber alrededor de la imagen -' display: block' es el valor predeterminado para un 'div'.Por otro lado, especificar 'display: block' en la imagen probablemente funcionaría igual de bien. El problema con esto es que si carga una imagen más pequeña que las dimensiones especificadas html, la imagen se distorsionará. –

Cuestiones relacionadas