JSFiddle - React, Tailwind, and code Playground

by Alexander

HTML

<div class="rating">
    <span>☆</span>
    <span>☆</span>
    <span>☆</span>
    <span>☆</span>
    <span>☆</span>
</div>

CSS

body {
    margin: 20px;
}

.rating {
    cursor: pointer;
    unicode-bidi: bidi-override;
    direction: rtl;
    text-align: center;
}

.rating > span {
    display: inline-block;
    position: relative;
}

.rating > span:hover,
.rating > span:hover ~ span {
    color: transparent;
}

.rating > span:hover:before,
.rating > span:hover ~ span:before {
    content: "\2605";
    position: absolute;
    left: 0;
    color: gold;
}