CSS是一種用于裝飾和設(shè)計(jì)網(wǎng)頁(yè)的語(yǔ)言,可以讓我們更好地控制網(wǎng)頁(yè)的外觀和布局。在實(shí)現(xiàn)打分樣式時(shí),CSS也發(fā)揮了極大的作用。
/* 打分樣式 */ .rating { display: inline-block; font-size: 0; width: 150px; height: 30px; position: relative; cursor: pointer; user-select: none; } .rating >input { display: none; } .rating >label:before { content: '\2605'; position: absolute; left: 0; color: #ccc; } .rating >label { display: inline-block; width: 30px; height: 30px; text-align: center; line-height: 30px; font-size: 25px; margin-right: 10px; transition: all .3s; } .rating >input:checked + label:before, .rating >input:checked ~ label:before { color: #ffdf00; }
在上述代碼中,我們給星星評(píng)分的元素添加了一個(gè)類名.rating,并將其設(shè)為內(nèi)聯(lián)塊元素。然后,我們定義了元素的寬高、字體大小為0、定位方式為相對(duì),并添加了一個(gè)光標(biāo)樣式,以便用戶可以點(diǎn)擊它進(jìn)行評(píng)分。
接下來(lái),我們隱藏了評(píng)分元素中的input元素,而將評(píng)分所需的星號(hào)創(chuàng)建為一個(gè)偽元素,并將其絕對(duì)定位在元素的左側(cè)。我們還為星星添加了一個(gè)label元素,使其成為具有函數(shù)和交互性的可點(diǎn)擊按鈕。
最后,我們?cè)趇nput元素被選中時(shí),將星星顏色改為黃色,實(shí)現(xiàn)了一種精美的星級(jí)評(píng)分效果。