在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當前位置:雨林木風下載站 > 網頁設計教程 > 詳細頁面

如何使用純CSS完成萬圣節的toggle控件(附源碼)

如何使用純CSS完成萬圣節的toggle控件(附源碼)

更新時間:2025-11-18 文章作者:未知 信息來源:網絡 閱讀次數:

網頁的本質就是超級文本標記語言,通過結合使用其他的Web技術(如:腳本語言、公共網關接口、組件等),可以創造出功能強大的網頁。因而,超級文本標記語言是萬維網(Web)編程的基礎,也就是說萬維網是建立...
網頁的本質就是超級文本標記語言,通過結合使用其他的Web技術(如:腳本語言、公共網關接口、組件等),可以創造出功能強大的網頁。因而,超級文本標記語言是萬維網(Web)編程的基礎,也就是說萬維網是建立在超文本基礎之上的。超級文本標記語言之所以稱為超文本標記語言,是因為文本中包含了所謂“超級鏈接”點。
本篇文章給大家帶來的內容是關于如何使用純CSS實現萬圣節的toggle控件(附源碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

效果預覽

3690678522-5bcb42a45c729_articlex.gif

源代碼地址

https://github.com/shanyuhai1...

代碼解讀

定義容器 halloween-switcher , 通過 checkbox 來實現切換

<section class="halloween-switcher">
  <input type="checkbox" id="halloween-input">
  <label for="switch-input" class="halloween-label">
    <div class="pumpkin-container"></div>
    <div class="vampire-container"></div>
  </label>
</section>

引入字體, 居中顯示:

@import url('https://fonts.googleapis.com/css?family=Kodchasan');

* {
  font-family: 'Kodchasan';
}

html {
  font-size: 20px;
}

body {
  width: 100vw;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #081219;
  overflow: hidden;
}

設置實際容器 label 大小

.halloween-label {
  width: 30rem;
  height: 10rem;
  border: 3px solid #E56D48;
  border-radius: 10rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  position: relative;
}

增加兩種容器的配色

html {
  --pumpkin-color: #E56D48;
  --vampire-color: #4D7C99;
}

定義 pumpkin-container , vampire-container 容器 及 文字

.halloween-input ~ .halloween-label::before,
.halloween-input:checked ~ .halloween-label::before {
  position: absolute;
  font-size: 2.5rem;
  text-transform: uppercase;
}
.halloween-input ~ .halloween-label::before {
  content: 'Pumpkin';
  color: var(--pumpkin-color);
  left: 70%;
  transform: translateX(-70%);
}
.halloween-input:checked ~ .halloween-label::before {
  content: 'Vampire';
  color: var(--vampire-color);
  left: 25%;
  transform: translateX(-25%);
}

.halloween-input ~ .halloween-label .pumpkin-container,
.halloween-input ~ .halloween-label .vampire-container {
  width: 9.5rem;
  height: 9.5rem;
  border-radius: 50%;
  position: absolute;
  left: 0.25rem;
  overflow: hidden;
}
.halloween-input ~ .halloween-label .pumpkin-container {
  background-color: var(--pumpkin-color);
  filter: opacity(1);
}
.halloween-input ~ .halloween-label .vampire-container {
  background-color: var(--vampire-color);
  filter: opacity(0);
}
.halloween-input:checked ~ .halloween-label .pumpkin-container {
  left: calc(100% - 0.25rem);
  transform: translateX(-100%);
  filter: opacity(0);
}
.halloween-input:checked ~ .halloween-label .vampire-container {
  left: calc(100% - 0.25rem);
  transform: translateX(-100%);
  filter: opacity(1);
}

增加 label容器 顏色漸變

.halloween-label {
  border: 3px solid var(--label-border-color);
  transition: .5s ease-in-out;
}
.halloween-label {
  --label-border-color: var(--pumpkin-color);
}
.halloween-input:checked ~ .halloween-label {
  --label-border-color: var(--vampire-color);
}

pumpkin-container , vampire-container 容器 及 文字

動畫效果

.halloween-input ~ .halloween-label::before,
.halloween-input:checked ~ .halloween-label::before {
  transition: .5s ease;
}
.halloween-input ~ .halloween-label .pumpkin-container,
.halloween-input ~ .halloween-label .vampire-container {
  transition: .5s ease;
}

先繪畫 pumpkin , 補全 pumpkin-container

<p class="pumpkin-container">
  <p class="pumpkin__eyes-n-nose"></p>
  <p class="pumpkin__mouth-n-teeths"></p>
</p>

新增果肉顏色

html {
  --pumkin-pulp-color: #330A0F;
}

繪畫 pumpkinpumpkin__eyes-n-nose

偽元素畫出眼睛

.pumpkin__eyes-n-nose {
  position: absolute;
  top: 20%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0.8rem 1.6rem 0.8rem;
  color: var(--pumpkin-color);
  border-bottom-color: var(--pumkin-pulp-color);
  background-color: var(--pumkin-pulp-color);
}
.pumpkin__eyes-n-nose::before,
.pumpkin__eyes-n-nose::after {
  content: '';
  position: absolute;
  width: 1rem;
  height: 1rem;
  background-color: var(--pumkin-pulp-color);
  border-radius: 50%;
  top: 0.5rem;
  left: 0;
}
.pumpkin__eyes-n-nose::before {
  margin-left: -3.25rem;
}
.pumpkin__eyes-n-nose::after {
  margin-left: 2.25rem;
}

繪畫 pumpkinpumpkin__mouth-n-teeths

偽元素畫出牙齒

.pumpkin__mouth-n-teeths {
  position: absolute;
  width: 6.5rem;
  height: 3.25rem;
  bottom: 10%;
  background-color: var(--pumkin-pulp-color);
  border-radius: 0 0 6.5rem 6.5rem;
}
.pumpkin__mouth-n-teeths::before,
.pumpkin__mouth-n-teeths::after {
  content: '';
  position: absolute;
  height: 0.75rem;
  width: 1rem;
  background-color: var(--pumpkin-color);
}
.pumpkin__mouth-n-teeths::before {
  top: 0;
  left: 1.25rem;
}
.pumpkin__mouth-n-teeths::after {
  height: 1rem;
  bottom: 0;
  right: 1.25rem;
}

再繪畫 vampire , 補全 vampire-container

<p class="vampire-container">
  <p class="vampire__eyes"></p>
  <p class="vampire__mouth">
    <p class="vampire__teeths"></p>
    <p class="vampire__tongue"></p>
  </p>
</p>

利用 偽元素 繪出 vampire-container 的臉

.vampire-container::before,
.vampire-container::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #c2def2;  /* face color */
  border-radius: 45% 45% 0 0;
  top: 0.75rem;
}
.vampire-container::before {
  left: -4rem;
}
.vampire-container::after {
  right: -4rem;
}

偽元素繪出 vampire__eyes

.vampire__eyes {
  top: 20%;
  position: absolute;
  z-index: 1;
}
.vampire__eyes::before,
.vampire__eyes::after {
  content: '';
  position: absolute;
  width: 1rem;
  height: 1rem;
  background-color: #d63e49; /* eye-color */
  border-radius: 50%;
  top: 0.5rem;
  left: 0;
}
.vampire__eyes::before {
  margin-left: -3.25rem;
}
.vampire__eyes::after {
  margin-left: 2.25rem;
}

繪出 vampire__mouth

.vampire__mouth {
  position: absolute;
  width: 6.5rem;
  height: 3.25rem;
  background-color: var(--pumkin-pulp-color);
  bottom: 10%;
  border-radius: 0 0 6.5rem 6.5rem;
  display: flex;
  justify-content: center;
  overflow: hidden;
  z-index: 1;
}

繪出 vampire__teeths 門牙, 偽元素繪出牙齒

.vampire__teeths {
  position: absolute;
  width: 100%;
  height: 1rem;
  background-color: #fffae6;
  top: -1px;
}
.vampire__teeths::before,
.vampire__teeths::after {
  content: '';
  position: absolute;
  width: 0;
  height: 0;
  color: transparent;
  border-style: solid;
  border-width: 0.65rem 0.375rem 0 0.375rem;
  border-top-color: #fffae6;
  top: 0.95rem;
}
.vampire__teeths::before {
  left: 1rem;
}
.vampire__teeths::after {
  right: 1rem;
}

繪出 vampire__tongue

.vampire__tongue {
  position: absolute;
  width: 3.5rem;
  height: 1.75rem;
  background-color: #d63e49;
  bottom: -0.75rem;
  border-radius: 3.5rem 3.5rem 0 0;
}

再接著把 checkbox 隱藏掉即可

.halloween-input {
  display: none;
}

增加微笑動畫 smile

.vampire__teeths {
  animation: smile 2s ease-in-out infinite;
}
.vampire__tongue {
  animation: smile 3s ease-in-out infinite;
}
@keyframes smile {
  50% {
    transform: scaleY(1.5);
  }
}

以上就是如何使用純CSS實現萬圣節的toggle控件(附源碼)的詳細內容,更多請關注php中文網其它相關文章!


網站建設是一個廣義的術語,涵蓋了許多不同的技能和學科中所使用的生產和維護的網站。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • 久久精品在线免费视频| 日本a在线天堂| 成年人视频观看| 成年人看的毛片| 国产精品免费看久久久无码| 日本道在线视频| 国产精品自在自线| 午夜久久福利视频| 色啦啦av综合| 五月天婷婷在线观看视频| 91社在线播放| 久久久久久久久久久福利| 无码内射中文字幕岛国片| 青青草原国产在线视频| 成人日韩在线视频| 网站在线你懂的| 欧美做暖暖视频| 自拍日韩亚洲一区在线| 日韩av资源在线| 欧美视频第三页| 欧美成人精品免费| 日本在线播放一区二区| 天天操精品视频| 国产欧美久久久久| 免费黄色福利视频| 毛片毛片毛片毛片毛片毛片毛片毛片毛片| 老司机av福利| 欧美黄网在线观看| 国产一区亚洲二区三区| 91蝌蚪视频在线| 国产91对白刺激露脸在线观看| 奇米影视亚洲色图| 亚洲精品www.| 欧美成人免费在线观看视频| 亚洲性生活网站| 日韩欧美一级在线| 久久久久久久久久久福利| 91亚洲精品久久久蜜桃借种| 久久www视频| 黄色三级视频在线| 18禁免费无码无遮挡不卡网站| 婷婷六月天在线| 大伊香蕉精品视频在线| 久久黄色片网站| 国产精品沙发午睡系列| 青青草原国产在线视频| 狠狠干 狠狠操| 亚洲av综合色区| 91女神在线观看| 久久无码高潮喷水| 久青草视频在线播放| 午夜大片在线观看| 五月婷婷狠狠操| 日本女优爱爱视频| 黄色片网址在线观看| 国产成人三级视频| 五月天色婷婷综合| www.精品在线| 激情文学亚洲色图| www.国产区| 日韩av资源在线| 成人免费在线小视频| 久久久久久久香蕉| 一区二区三区 日韩| av观看免费在线| 久久久久免费看黄a片app| 国产91视频一区| 97超碰在线视| 无码av天堂一区二区三区| 欧洲精品视频在线| 国产911在线观看| 日本大胆人体视频| 欧美大黑帍在线播放| 久久久99精品视频| 福利视频一区二区三区四区| 黄色激情在线视频| 天堂…中文在线最新版在线| 国产特级淫片高清视频| www.色偷偷.com| 狠狠热免费视频| 天天综合网日韩| 91视频福利网| 免费看欧美黑人毛片| 男人日女人逼逼| 青青草精品视频在线观看| 亚洲免费999| 欧美 亚洲 视频| 精品中文字幕av| 爱豆国产剧免费观看大全剧苏畅| 五月天开心婷婷| 日韩中文字幕在线不卡| 内射国产内射夫妻免费频道| 三级4级全黄60分钟| 亚洲一区二区福利视频| 精品一区二区三区无码视频| av免费播放网址| 欧美成人乱码一二三四区免费| 亚洲一区二区在线视频观看| 久久久国内精品| 亚洲精品视频导航| 老司机午夜网站| 日本久久精品一区二区| 免费看黄色a级片| 欧美日韩在线中文| 喜爱夜蒲2在线| 亚洲久久中文字幕| 欧美又粗又长又爽做受| 亚洲成人av免费看| www插插插无码免费视频网站| 黄色一级二级三级| 国产人妻777人伦精品hd| 天天操天天干天天做| 免费看的黄色大片| 台湾无码一区二区| 中文字幕第三区| 亚洲36d大奶网| 午夜精品久久久内射近拍高清| 色乱码一区二区三区熟女| av动漫在线观看| 欧美精品卡一卡二| 日韩在线视频在线| 天天干天天色天天爽| 一区二区三区入口| 黄色免费视频大全| 男人日女人下面视频| 无码人妻精品一区二区蜜桃网站| 天天干天天曰天天操| 五月婷婷狠狠操| 国产主播中文字幕| 北条麻妃在线一区| 男人的天堂99| 免费国产成人av| 日韩手机在线观看视频| 欧洲av无码放荡人妇网站| 18岁网站在线观看| 日本黄网站免费| 四虎永久在线精品无码视频| 69堂免费视频| 美女网站免费观看视频| 三级a在线观看| 777视频在线| 男插女免费视频| 毛片在线视频观看| 成年人视频观看| 国产视频在线视频| 超碰成人在线播放| 日日夜夜精品视频免费观看 | 欧美黄色免费影院| 精品视频无码一区二区三区| 99精品视频播放| 国产91色在线观看| 男插女免费视频| 可以在线看的av网站| 黑森林福利视频导航| 一道本在线免费视频| 欧美性受xxxx黑人猛交88| 99久久99久久精品| 亚洲国产精品久久久久婷蜜芽| 中文字幕乱码人妻综合二区三区| 亚洲色精品三区二区一区| 日韩不卡一二三| 日本a级片在线观看| 久久精品国产sm调教网站演员 | 看看黄色一级片| 欧美日韩中文字幕在线播放| 亚洲熟妇av一区二区三区| 中文字幕在线视频一区二区三区| 日韩久久久久久久久久久久| 免费看的黄色大片| 一级片免费在线观看视频| 久久久久久久久久久99| 中文字幕av专区| 成人免费观看cn| 在线视频日韩欧美| 99草草国产熟女视频在线| 午夜在线视频免费观看| 久热免费在线观看| www.在线观看av| 老司机午夜性大片| 91视频最新入口| 男人添女人下部视频免费| 亚洲一区二区在线视频观看| 欧美 日韩 激情| 国产高清不卡无码视频| 国内自拍第二页| 乱子伦视频在线看| 18岁网站在线观看| 国产欧美久久久久| 4444在线观看| 国产九九九视频| 日本人69视频| 黄色一级片免费的| 天堂在线资源视频| 欧美三级理论片| 18岁视频在线观看| 欧美污视频网站| 中文字幕乱码人妻综合二区三区| 免费一级特黄毛片| 蜜臀精品一区二区| 国产91在线亚洲|