最新文章
input單選按鈕樣式如何修改
前言:
在表單單選按鈕開發(fā)過程中,我們肯定會(huì)感覺原生的radio太丑而且在ios端會(huì)出現(xiàn)看不清的原因。我們本著百分之百還原設(shè)計(jì)圖的原則需要在radio的基礎(chǔ)上進(jìn)行修改。接下來就由石家莊網(wǎng)站建設(shè)工程師為大家詳細(xì)介紹。
原理:
將label 的for和radio的id 關(guān)聯(lián)到一起,關(guān)聯(lián)到一起就可以到達(dá)和radio一樣的效果同時(shí)也可以修改css樣式進(jìn)行美化,(必須關(guān)聯(lián)到一起要不然會(huì)出現(xiàn)點(diǎn)擊無(wú)效的BUG)這樣式部分就可以做很多事情了,首先需要將他們的父級(jí)做相對(duì)定位,再將label絕對(duì)定位到radio上面,最好再給input設(shè)置成display:none;就可以實(shí)現(xiàn)。
實(shí)現(xiàn):
首先設(shè)置HTML頁(yè)面,剛才我們說到將label 的for和radio的id 關(guān)聯(lián)到一起,我準(zhǔn)備采用flex布局所以在最外層添加了一層。其實(shí)做到這里其實(shí)已經(jīng)實(shí)現(xiàn)了就是看不出來效果。
css部分:最外層的容器需要設(shè)置 display:flex;確保子元素在一行 align-items: center; 確保子元素在水平居中(如果有朋友對(duì)彈性盒子不了解的話,后面會(huì)出一期單獨(dú)講彈性盒子的)
外層設(shè)置position: relative;
label 需要設(shè)置 position: absolute;屬性 蓋到 radio的上面做到模擬點(diǎn)擊效果
重點(diǎn)來了!我們需要radio的checked和label的屬性設(shè)置到一起。
這樣我們的效果就出來了,間距和字體字號(hào)我在這里就不多贅述了。
總結(jié)重點(diǎn):
1.將label 的for和radio的id 關(guān)聯(lián)到一起
2.label 需要設(shè)置 position: absolute;屬性 蓋到 radio的上面做到模擬點(diǎn)擊效果
3.我們需要radio的checked和label的屬性設(shè)置到一起
4.自定義修改沒有選中狀態(tài)修改label樣式,選中狀態(tài)同時(shí)修改radio checked + label:after
以上關(guān)于input單選按鈕樣式修改均屬石家莊網(wǎng)站建設(shè)工程師的個(gè)人觀點(diǎn),大家如果對(duì)此有著不同的見解,可以關(guān)注公眾號(hào)“尚武科技派”給我留言,大家可以交流一下自己的心德體會(huì),共同學(xué)習(xí)進(jìn)步。