Foros del Web » Creando para Internet » CSS »

[SOLUCIONADO] Problema con background-position en clase CSS

Estas en el tema de Problema con background-position en clase CSS en el foro de CSS en Foros del Web. Hola a todos, estoy haciendo una especie de sistema de puntuación, en el que una clase general (stars) coge de fondo una imagen donde se ...
  #1 (permalink)  
Antiguo 07/08/2013, 03:13
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Problema con background-position en clase CSS

Hola a todos, estoy haciendo una especie de sistema de puntuación, en el que una clase general (stars) coge de fondo una imagen donde se encuentran todas las clasificaciones posibles y quiero que cada clasificacion tenga una clase particular para indicar la posicion en ese fondo de la puntuación.

Código HTML:
.stars{
	background: url(../img/stars_rating.png) no-repeat;
	float: left;
	height: 8px;
	width: 25%;
	margin-left: 10px;
	background-color: #fff;
}


.1star{background-position: 0px -51px;}
.2stars{background-position: 0px -51px;}
.3stars{background-position: 0px -51px;}
.4stars{background-position: 0px -51px;}
.5stars{background-position: 0px -51px;}


#php5{background-position: 0px -51px;}
Y no aparece ninguna de las puntuaciones si no que se queda en la posicion 0 0 de la imagen de fondo. Sin embargo, si en el mismo div coloco una id con una puntuacion, si aparece posicionado el fondo correctamente

Código HTML:
<ul class="subcampo">
<li>
	<label>POO PHP5</label>
	<div class="stars rounded 2-stars" id="php5"></div>
</li>
<li>
	<label>Ruby On Rails</label>
	<div class="1star rounded stars"></div>
</li>
<li>
	<label>Asp</label>
	<div class="3stars stars rounded"></div>
</li>
</ul> 
¿Alguien sabe a qué puede deberse? Parece algo relacionado con preferencia de selectores o algo así porque al mirar con "herramienta para desarrolladores" la clase 1star por ejemplo, no está dando estilo a ningun div.
  #2 (permalink)  
Antiguo 07/08/2013, 03:20
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con background-position en clase CSS

¿Qué doctype estás usando? Sino es HTML5, el nombre de las clases no pueden empezar por números.
  #3 (permalink)  
Antiguo 07/08/2013, 03:23
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: Problema con background-position en clase CSS

Me respondo yo sólo, haciendo pruebas como siempre el error es lo más tonto... Es la primera que le utilizado clases que empezaran por número y no es posible, por tanto la solución es cambiar el orden:

star-1
stars-2
stars-3
stars-4
stars-5

Listo... Gracias igualmente ;)
  #4 (permalink)  
Antiguo 07/08/2013, 03:28
 
Fecha de Ingreso: junio-2007
Ubicación: Cádiz
Mensajes: 369
Antigüedad: 16 años, 10 meses
Puntos: 7
Respuesta: Problema con background-position en clase CSS

Cita:
Iniciado por pzin Ver Mensaje
¿Qué doctype estás usando? Sino es HTML5, el nombre de las clases no pueden empezar por números.
Pues es html5

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8" />
</head>
...
  #5 (permalink)  
Antiguo 07/08/2013, 05:21
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Problema con background-position en clase CSS

Pues es curioso, en Chrome desde Mac tampoco me hace caso si pongo un identificador o una clase empezando por un número, aunque en la especificación dice que es perfectamente posible.

Sino, siempre podrás usar el selector de atributos:

Código CSS:
Ver original
  1. [class="1star"] {
  2.   background-position: 0 51px;
  3. }

Etiquetas: background, clase, color, position
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 09:10.