摘要:假如把的都刪除,就是這樣當(dāng)這個(gè)是,子級(jí)是時(shí),子級(jí)的是根據(jù)這個(gè)的原始點(diǎn)為原始點(diǎn)。的子節(jié)點(diǎn)我觀察到就是按鈕中間的黑色點(diǎn)點(diǎn)。總之它就是定義了一個(gè)黑色的圓形。的只有一點(diǎn)要注意不透明度為,也就是不顯示。的加號(hào),是相鄰兄弟選擇器。
本源代碼來(lái)自http://cssdeck.com/labs/css-checkbox-styles
我只是將其進(jìn)行分析。
效果圖
點(diǎn)擊前 點(diǎn)擊后
CSS在這里我只一段段分析。源地址有源代碼,我就不粘了。
根節(jié)點(diǎn) roundedOne
在這里我只一段段分析。源地址有源代碼,我就不粘了。
.roundedOne { width: 28px; height: 28px; background: #fcfff4; background: -webkit-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%); background: -moz-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%); background: -o-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%); background: -ms-linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%); background: linear-gradient(top, #fcfff4 0%, #dfe5d7 40%, #b3bead 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#fcfff4", endColorstr="#b3bead",GradientType=0 ); margin: 20px auto; -webkit-border-radius: 50px; -moz-border-radius: 50px; border-radius: 50px; -webkit-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5); -moz-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5); box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5); position: relative;// 當(dāng)這個(gè)是relative,子級(jí)是absolute時(shí),子級(jí)的TLBR是根據(jù)這個(gè)的原始點(diǎn)為原始點(diǎn)。 }
.roundedOne只是給了它一個(gè)那個(gè)白色的圈。
假如把.roundedOne的width,height,background都刪除,就是這樣:
position: relative;// 當(dāng)這個(gè)是relative,子級(jí)是absolute時(shí),子級(jí)的TLBR是根據(jù)這個(gè)的原始點(diǎn)為原始點(diǎn)。
roundedOne的子節(jié)點(diǎn)label
.roundedOne label { cursor: pointer; position: absolute; width: 20px; height: 20px; -webkit-border-radius: 50px; -moz-border-radius: 50px; border-radius: 50px; left: 4px; top: 4px; -webkit-box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,1); -moz-box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,1); box-shadow: inset 0px 1px 1px rgba(0,0,0,0.5), 0px 1px 0px rgba(255,255,255,1); background: -webkit-linear-gradient(top, #222 0%, #45484d 100%); background: -moz-linear-gradient(top, #222 0%, #45484d 100%); background: -o-linear-gradient(top, #222 0%, #45484d 100%); background: -ms-linear-gradient(top, #222 0%, #45484d 100%); background: linear-gradient(top, #222 0%, #45484d 100%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#222", endColorstr="#45484d",GradientType=0 ); }
我觀察到,label就是按鈕中間的黑色點(diǎn)點(diǎn)。
cursor: pointer;這個(gè)屬性是定義了鼠標(biāo)移動(dòng)上去的光標(biāo);
position: absolute;上一步已經(jīng)說(shuō)過(guò)了;
width: 20px;height: 20px;定義這個(gè)塊的大小;
border-radius: 50px; 圓角;
left: 4px;top: 4px;不多說(shuō);
background: -webkit-linear-gradient(top, #222 0%, #45484d 100%);顏色為線性漸變。
總之它就是定義了一個(gè)黑色的圓形。
roundedOne的label:after
.roundedOne label:after { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; filter: alpha(opacity=0); opacity: 0; content: ""; position: absolute; width: 16px; height: 16px; background: #00bf00; background: -webkit-linear-gradient(top, #00bf00 0%, #009400 100%); background: -moz-linear-gradient(top, #00bf00 0%, #009400 100%); background: -o-linear-gradient(top, #00bf00 0%, #009400 100%); background: -ms-linear-gradient(top, #00bf00 0%, #009400 100%); background: linear-gradient(top, #00bf00 0%, #009400 100%); -webkit-border-radius: 50px; -moz-border-radius: 50px; border-radius: 50px; top: 2px; left: 2px; -webkit-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5); -moz-box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5); box-shadow: inset 0px 1px 1px white, 0px 1px 3px rgba(0,0,0,0.5); }
只有一點(diǎn)要注意opacity: 0;不透明度為0,也就是不顯示。而在后面應(yīng)該會(huì)看到有一個(gè)地方把這個(gè)設(shè)置為1,我覺(jué)得應(yīng)該就是當(dāng)被checked時(shí),opacity就會(huì)被設(shè)置為1.
.roundedOne input[type=checkbox]:checked + label:after { opacity: 1; }
roundedOne的label:hover::after
.roundedOne label:hover::after { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)"; filter: alpha(opacity=30); opacity: 0.3; }
不多說(shuō)。
roundedOne的input
.roundedOne input[type=checkbox]:checked + label:after { -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; filter: alpha(opacity=100); opacity: 1; }
加號(hào),是CSS 相鄰兄弟選擇器。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/49729.html
摘要:假如把的都刪除,就是這樣當(dāng)這個(gè)是,子級(jí)是時(shí),子級(jí)的是根據(jù)這個(gè)的原始點(diǎn)為原始點(diǎn)。的子節(jié)點(diǎn)我觀察到就是按鈕中間的黑色點(diǎn)點(diǎn)。總之它就是定義了一個(gè)黑色的圓形。的只有一點(diǎn)要注意不透明度為,也就是不顯示。的加號(hào),是相鄰兄弟選擇器。 本源代碼來(lái)自http://cssdeck.com/labs/css-checkbox-styles我只是將其進(jìn)行分析。 Rounded ONE HTML ...
摘要:學(xué)習(xí)摘要定位實(shí)例學(xué)習(xí)摘要定位實(shí)例注全文摘自定位實(shí)例列表消息盒子列表消息盒子我們研究的第一個(gè)例子是一個(gè)經(jīng)典的選項(xiàng)卡消息框,你想用一塊小區(qū)域包括大量信息時(shí),一個(gè)非常常用的特征。刪除你的不需要居中顯示,添加定位調(diào)整屬性把她粘在瀏覽器的視域。CSS學(xué)習(xí)摘要-定位實(shí)例 注:全文摘自MDN-CSS定位實(shí)例 列表消息盒子 我們研究的第一個(gè)例子是一個(gè)經(jīng)典的選項(xiàng)卡消息框,你想用一塊小區(qū)域包括大量信息時(shí),一個(gè)非...
摘要:思路美化思路是,先把之前的按鈕透明度設(shè)置為然后,外層用包裹,就實(shí)現(xiàn)了美化功能。上傳按鈕美化代碼如下樣式一樣式二點(diǎn)擊這里上傳文件選擇文件結(jié)果樣式一樣式二美化代碼如下背景圖片樣式結(jié)果美化代碼如下背景圖片樣式結(jié)果 思路: 美化思路是,先把之前的按鈕透明度opacity設(shè)置為0,然后,外層用div包裹,就實(shí)現(xiàn)了美化功能。 input[type=file]上傳按鈕美化 代碼如下: 樣式一: /*...
閱讀 2996·2021-11-23 09:51
閱讀 3616·2021-10-13 09:39
閱讀 2503·2021-09-22 15:06
閱讀 887·2019-08-30 15:55
閱讀 3153·2019-08-30 15:44
閱讀 1784·2019-08-30 14:05
閱讀 3439·2019-08-29 15:24
閱讀 2369·2019-08-29 12:44