Creación de un widget de clasificación por estrellas con HTML/CSS puro

Tiempo de ejecución: 30 minutos. Empezar

Autor: mukulkant
Views Total: 6,498
Sitio oficial: Ir a la web
Actualizado: December 23, 2015
Licencia: MIT

Vista prévia

Creación de un widget de clasificación por estrellas con HTML/CSS puro

Descripción

Un enfoque de CSS solo para crear un widget de clasificación por estrellas en su página web usando HTML y CSS/CSS3 sin formato.

Funcionamiento

Cree un conjunto de botones de radio con etiquetas para el widget de calificación de 5 estrellas.

<div class="rate">

<input type="radio" id="star5" name="rate" value="5" />

<label for="star5" title="text">5 stars</label>

<input type="radio" id="star4" name="rate" value="4" />

<label for="star4" title="text">4 stars</label>

<input type="radio" id="star3" name="rate" value="3" />

<label for="star3" title="text">3 stars</label>

<input type="radio" id="star2" name="rate" value="2" />

<label for="star2" title="text">2 stars</label>

<input type="radio" id="star1" name="rate" value="1" />

<label for="star1" title="text">1 star</label>
</div>

El CSS principal para el widget de clasificación por estrellas. Ajustar los estilos CSS como se muestra a continuación según su necesidad.

.rate {

border: 1px solid #cccccc;

float: left;

height: 46px;

padding: 0 10px;
}

.rate:not(:checked) > input {

position: absolute;

top: -9999px;
}

.rate:not(:checked) > label {

float: right;

width: 1em;

overflow: hidden;

white-space: nowrap;

cursor: pointer;

font-size: 30px;

color: #ccc;
}

.rate:not(:checked) > label:before { content: '★ '; }

.rate > input:checked ~ label { color: #ffc700; }

.rate:not(:checked) > label:hover, .rate:not(:checked) > label:hover ~ label { color: #deb217; }

.rate > input:checked + label:hover, .rate > input:checked + label:hover ~ label, .rate > input:checked ~ label:hover, .rate > input:checked ~ label:hover ~ label, .rate > label:hover ~ input:checked ~ label { color: #c59b08; }

Te puede interesar: