2009-03-14 25 views
9

Estoy usando una imagen de fondo para <li> que se usará como botón, pero no se muestra completamente; sin embargo, cuando escribe texto, se muestra. No quiero que se escriba texto, ya está impreso en la imagen de fondo. No puedo establecer un ancho. ¿Cómo puedo solucionarlo?usando la imagen de fondo para li

#footernav li#footerlocation 
{ 
    display: inline; 
    padding-right: 20px; 
    background-image: url(../images/ourlocation.jpg); 
    background-repeat: no-repeat; 
    background-position: 0 -.2em; 
} 

Respuesta

10

Su problema está en la configuración de la configuración en línea. Si desea fondo y ancho, pero también necesita una lista en línea, configure float: left.

+0

Gracias, pero en algún lugar vi que sangrar el texto a miles de píxeles a desaparecer, de todos modos sigo ur sugerencia y su trabajo ahora. – Yasir

+1

Aún puede sangrar el texto; eso en realidad no tiene nada que ver con el diseño. El problema es que cuando configura la visualización en línea en un elemento de nivel de bloque, se reducirá naturalmente al ancho mínimo requerido; entonces si un elemento no tiene texto, el ancho va a cero. –

0

definir el ancho y la altura de la imagen

7

Tome una mirada en el siguiente ejemplo:

ul#footernav li { 
     display:inline; 
     } 
    ul#footernav li a{ 
     display:block; 
     width:155px; 
     text-indent:-9999px; 
     } 
    ul#footernav li.footerlocation a{ 
     height:30px ; 
     background: url('images/image.jpg') bottom left no-repeat; 
     } 
    ul#footernav li.footerlocation a:hover{ 
     height:30px ; 
     background: url(images/image.jpg) top left no-repeat; 
     } 
+0

Gracias SuperUnititled eso es lo que quiero hacer esa vez, la próxima vez deberá usar esto. – Yasir

4

Sí tengo el mismo problema, me acaba de quitar el estilo css display: inline y añadir display: list-item; float:left; mi problema resuelto , espero que esto ayude.

Gracias, Sankar B

Cuestiones relacionadas