2012-05-04 21 views
16

Tengo una imagen y todavía no he definido la fuente. Tiene una frontera:/¿Cómo puedo eliminar el borde alrededor de una imagen sin una fuente?

por ejemplo: <img src="" />

Si le doy una fuente, la frontera desaparece (debido a la CSS: border:none).

¿Cómo puedo eliminar el borde alrededor de una imagen cuando no tiene una fuente?

+0

¿Qué quiere decir con "no tiene una fuente"? Que tiene un '' vacío? – lu1s

+2

No creo que pueda, lo mejor es simplemente agregar el src o no tener la etiqueta de imagen, o establecer su ancho/alto en 0 a menos que haya un src disponible. También podría usar una imagen transparente como marcador de posición. – Louis

+0

¡Exactamente! Ahora, ¿cómo elimino el borde de él? – Tgwizman

Respuesta

18

Puede que no se trata de un defecto del navegador, mejor que sólo tiene que añadir en el src o no tener la etiqueta de imagen, o establecer su anchura/altura a 0 a menos que haya un src disponible. También podría usar una imagen transparente como marcador de posición.

4

Podrías esconderlo hasta que le des un src.

img { 
height: 200px; 
width: 200px; 
visibility: hidden;  
}​ 

O darle el tamaño 0

img { 
height: 0; 
width: 0; 
}​ 
27

Lo que podría sugerir es en caso de no tener un src = "" quitarlo y puede

img { 
    display: none; 
} 


img[src] { 
    display: block; 
} 

o si conoce como el URL contiene una palabra especial, como HTTP que puede hacer:

img[src*="http"] { 
    display: block; 
} 
+1

Un poco tarde allí;) – Tgwizman

+3

No hay problema ..al menos puede ser útil para otros: D –

+2

No sabía que podía hacer eso, gracias. – Louis

11

una imagen con un dato: el atributo src URL

<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="> 

Dependiendo requiere el soporte de los navegadores años u también podría:

img[src=""] { 
    content:url("data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="); 
} 

Ver: http://probablyprogramming.com/2009/03/15/the-tiniest-gif-ever

2

visibility: hidden; mantiene el espacio de la imagen vacía. display: none; ocultar completamente la imagen y no hay espacio reservado

11

sugeriría a utilizar text-indent: 100vw;

.logo { 
 
    text-indent: 100vw; 
 
}
<img class="logo" src="" alt="my logo" />

+1

Buena solución. Pero ¿está funcionando? – fentas

+0

@fentas Es simplemente mover la posición del texto con las propiedades 'text-indent'. Puede ver la diferencia si cambia el valor 'text-indent' – Muhammed

+0

No funciona en la versión de Chrome 57.0.2987.133. – QMaster

0

El src de la etiqueta img puede ser 404 Err. En este caso, puede utilizar como sigue:

div.menu_avatar { 
    width: 50px; 
    height: 50px; 
    overflow:hidden; 
} 
div.menu_avatar img{ 
    width:52px; 
    height:52px; 
    margin-left: -1px; 
    margin-top:-1px; 
} 
-2

Basta con retirar src="";) y va a desaparecer así como así.

Cuestiones relacionadas