Foros del Web » Creando para Internet » CSS »

consulta sprite

Estas en el tema de consulta sprite en el foro de CSS en Foros del Web. hola a todos, estoy empezando a usar sprite, pero me tengo una duda este es mi html con dos divs, y en cada una va ...
  #1 (permalink)  
Antiguo 06/01/2012, 14:46
Avatar de alfcm  
Fecha de Ingreso: mayo-2009
Mensajes: 291
Antigüedad: 15 años, 6 meses
Puntos: 7
consulta sprite

hola a todos, estoy empezando a usar sprite, pero me tengo una duda

este es mi html con dos divs, y en cada una va una imagen
Código HTML:
Ver original
  1. <div id="header_logo"></div>
  2. <div id="header_title"></div>
  3. </body>
  4. </html>

mi css con sprite es

Código CSS:
Ver original
  1. #header_logo{
  2.     background:url(../img/misprite.png) no-repeat 0px -230px;
  3.     display:block;
  4.     float:left;
  5.     height:150px;
  6.     width:130px;
  7.     margin-bottom:-40px;
  8. }
  9. #header_title{
  10.     padding:10px;
  11.     padding-top:0;
  12.     width:200px;
  13.     font:bold 35px;
  14.     float:left;
  15.     height:82px;
  16.     background:url(../img/misprite.png) no-repeat 0px -110px;
  17. }

mi duda es en el CSS, tengo #header_logo y #header_title, cada uno esta llamando al archivo misprite.png.

Este es un ejemplo de internet


Código CSS:
Ver original
  1. /* las propiedades generales */
  2. a.iconos {
  3.   background:transparent url(URL_IMAGEN) no-repeat 0px 0px;
  4.   display: block;
  5.   height: 16px;
  6.   width: 16px;
  7. }
  8.  
  9. /* las propiedades de cada uno de los íconos */
  10. a.icono1 {background-position: 0px 0px;}
  11. a.icono2 {background-position: -16px 0px;}
  12. a.icono3 {background-position: -32px 0px;}
  13.  
  14. /* las propiedades de los íconos con efecto hover */
  15. a.icono1:hover {background-position: 0px -16px;}
  16. a.icono2:hover {background-position: -16px -16px;}
  17. a.icono3:hover {background-position: -32px -16px;}

aqui veo que solamente carga una vez la imagen a.iconos {background:transparent url(URL_IMAGEN) no-repeat 0px 0px;}

NO ESTOY MUY SEGURO SI LO MIO ESTA BIEN APLICADO CON RESPECTO A LOS SPRITE

Agradeceria su respuesta y mas aun con consejos para aplicar los sprite
  #2 (permalink)  
Antiguo 06/01/2012, 21:05
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 15 años, 5 meses
Puntos: 269
Respuesta: consulta sprite

Por una cuestión de comodidad creamos clases y le pasamos el background (image y repeat) a todas juntas. y luego damos el width, height y backgroun-position a cada clase por separado.

Esto no quita que lo puedas hacer con #id's o que pases el background por cada elemento como lo vienes haciendo. Seguro que no va a ser lo más práctico, pero también va a funcionar.

Espero te sea de ayuda. Saludos.
  #3 (permalink)  
Antiguo 08/01/2012, 05:59
Avatar de alfcm  
Fecha de Ingreso: mayo-2009
Mensajes: 291
Antigüedad: 15 años, 6 meses
Puntos: 7
Respuesta: consulta sprite

gracias por la respuesta CRISTIAN, pero comparando los dos ejemplos, en rendimiento, en llamadas request al servidor, cual de los dos es mas recomendable?

gracias nuevamente por la respuesta
  #4 (permalink)  
Antiguo 09/01/2012, 16:06
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 15 años, 5 meses
Puntos: 269
Respuesta: consulta sprite

bueno, supongo que la 2da forma será mejor porque llamas solo una vez la imagen, además de lucir más prolijo y de ser más mantenible por el hecho de tener una imagen por cada clase.

Personalmente opto por hacer mis sprites de la segunda forma. es decir:
Código CSS:
Ver original
  1. .clase1, .clase2, .claseN{
  2. background:url("path/img.xxx") 0 0 no-repeat;
  3. /*... otros estilos comunes a todas las clases ...*/
  4. }
  5. .clase1{width:...; height:...; background-position:0 0;}
  6. .clase2{width:...; height:...; background-position:-25px 0;}
  7. .claseN{width:...; height:...; background-position:-50px 0; background-repeat:repeat;}
Esta herramienta para crear sprites dinámicos (muy buena) también trabaja de esta forma, lo que indica que es un buen método.
Saludos.

Etiquetas: hover, html, internet, sprite, fondo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:04.