日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > CSS >内容正文

CSS

css线加点的进度,纯CSS实现的交互式进度条(点击带进度填充动画)

發布時間:2024/7/19 CSS 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 css线加点的进度,纯CSS实现的交互式进度条(点击带进度填充动画) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CSS

語言:

CSSSCSS

確定

.bar {

display: flex;

flex-direction: row-reverse;

margin: auto auto 0;

width: 300px;

max-width: calc(100% - 30px);

}

.bar-input {

opacity: 0;

pointer-events: none;

position: absolute;

top: -9999px;

left: -9999px;

}

.bar-input:checked ~ .bar-view:nth-child(10):after {

transition-delay: -0.05s;

}

.bar-input:checked ~ .bar-view:nth-child(10) .bar-button:before {

transition-delay: 0.01s;

}

.bar-input:checked ~ .bar-view:nth-child(8):after {

transition-delay: 0.05s;

}

.bar-input:checked ~ .bar-view:nth-child(8) .bar-button:before {

transition-delay: 0.11s;

}

.bar-input:checked ~ .bar-view:nth-child(6):after {

transition-delay: 0.15s;

}

.bar-input:checked ~ .bar-view:nth-child(6) .bar-button:before {

transition-delay: 0.21s;

}

.bar-input:checked ~ .bar-view:nth-child(4):after {

transition-delay: 0.25s;

}

.bar-input:checked ~ .bar-view:nth-child(4) .bar-button:before {

transition-delay: 0.31s;

}

.bar-input:checked ~ .bar-view:nth-child(2):after {

transition-delay: 0.35s;

}

.bar-input:checked ~ .bar-view:nth-child(2) .bar-button:before {

transition-delay: 0.41s;

}

.bar-input:checked ~ .bar-view:after {

-webkit-transform: scaleX(1);

transform: scaleX(1);

}

.bar-input:checked ~ .bar-view .bar-button:before {

-webkit-transform: none;

transform: none;

opacity: 1;

}

.bar-input:checked + .bar-view .bar-button:after {

opacity: 1;

-webkit-animation: bouncing 0.6s cubic-bezier(0, 0, 0.74, 1.04) infinite;

animation: bouncing 0.6s cubic-bezier(0, 0, 0.74, 1.04) infinite;

}

.bar-view {

display: flex;

flex-grow: 1;

position: relative;

}

.bar-view:after {

height: 2px;

top: calc(50% - 1px);

transition: -webkit-transform 0.06s cubic-bezier(0, 0.72, 0.58, 1);

transition: transform 0.06s cubic-bezier(0, 0.72, 0.58, 1);

transition: transform 0.06s cubic-bezier(0, 0.72, 0.58, 1), -webkit-transform 0.06s cubic-bezier(0, 0.72, 0.58, 1);

-webkit-transform: scaleX(0);

transform: scaleX(0);

background: #FFB732;

-webkit-transform-origin: left;

transform-origin: left;

z-index: 1;

}

.bar-view:not(:last-child):before,

.bar-view:not(:last-child):after {

content: "";

width: calc(100% - 24px);

position: absolute;

right: calc(50% + 12px);

}

.bar-view:not(:last-child):before {

height: 6px;

top: calc(50% - 3px);

background: #3C6997;

}

.bar-view:not(:last-child):nth-child(2):after {

transition-delay: 0s;

}

.bar-view:not(:last-child):nth-child(2) .bar-button:before {

transition-delay: 0.06s;

}

.bar-view:not(:last-child):nth-child(4):after {

transition-delay: 0.1s;

}

.bar-view:not(:last-child):nth-child(4) .bar-button:before {

transition-delay: 0.16s;

}

.bar-view:not(:last-child):nth-child(6):after {

transition-delay: 0.2s;

}

.bar-view:not(:last-child):nth-child(6) .bar-button:before {

transition-delay: 0.26s;

}

.bar-view:not(:last-child):nth-child(8):after {

transition-delay: 0.3s;

}

.bar-view:not(:last-child):nth-child(8) .bar-button:before {

transition-delay: 0.36s;

}

.bar-view:not(:last-child):nth-child(10):after {

transition-delay: 0.4s;

}

.bar-view:not(:last-child):nth-child(10) .bar-button:before {

transition-delay: 0.46s;

}

.bar-button {

display: block;

width: 30px;

height: 30px;

margin: auto;

border-radius: 50%;

border: 3px solid #3C6997;

position: relative;

cursor: pointer;

box-shadow: inset 2px 2px 4px rgba(0, 0, 0, 0.3), 2px 2px 8px rgba(0, 0, 0, 0.1);

}

.bar-button:hover:after {

-webkit-transform: none;

transform: none;

opacity: 1;

}

.bar-button:before,

.bar-button:after {

content: "";

position: absolute;

pointer-events: none;

}

.bar-button:before {

width: 100%;

height: 100%;

border-radius: 50%;

background: radial-gradient(circle at center, #FFDD4A, #FE9000);

-webkit-transform: scale(0.3);

transform: scale(0.3);

opacity: 0;

transition-property: opacity, -webkit-transform;

transition-property: transform, opacity;

transition-property: transform, opacity, -webkit-transform;

transition-duration: 0.2s;

transition-timing-function: cubic-bezier(0, 0.72, 0.58, 1);

}

.bar-button:after {

border: 8px solid transparent;

border-top-color: #5ADBFF;

bottom: calc(100% + 10px);

left: calc(50% - 8px);

-webkit-transform: translateY(-10px);

transform: translateY(-10px);

opacity: 0;

transition-property: opacity, -webkit-transform;

transition-property: transform, opacity;

transition-property: transform, opacity, -webkit-transform;

transition-duration: 0.2s;

transition-timing-function: cubic-bezier(0, 0, 0, 1.97);

}

.command {

font-family: "Ubuntu Mono", monospace;

letter-spacing: 1px;

margin: 30px auto auto;

-webkit-animation: fade 1s ease infinite;

animation: fade 1s ease infinite;

}

html,

body {

width: 100%;

height: 100%;

display: flex;

flex-direction: column;

background: linear-gradient(to bottom right, rgba(255, 221, 74, 0.1), #fff);

}

* {

box-sizing: border-box;

}

*:before,

*:after {

box-sizing: inherit;

}

@-webkit-keyframes bouncing {

0%, 100% {

-webkit-transform: translateY(0);

transform: translateY(0);

}

50% {

-webkit-transform: translateY(5px);

transform: translateY(5px);

}

}

@keyframes bouncing {

0%, 100% {

-webkit-transform: translateY(0);

transform: translateY(0);

}

50% {

-webkit-transform: translateY(5px);

transform: translateY(5px);

}

}

@-webkit-keyframes fade {

50% {

opacity: 0.3;

}

}

@keyframes fade {

50% {

opacity: 0.3;

}

}

總結

以上是生活随笔為你收集整理的css线加点的进度,纯CSS实现的交互式进度条(点击带进度填充动画)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。