css的進度條文字根據進度漸層

來源:互聯網
上載者:User
這次給大家帶來css的進度條文字根據進度漸層,css進度條文字根據進度漸層的注意事項有哪些,下面就是實戰案例,一起來看一下。

本文介紹了css 進度條的文字根據進度漸層的範例程式碼,分享給大家,具體如下:

需求

1.進度條裡面的文字需要根據進度的長度而變化

原理

用兩個一模一樣的樣式的 p 重疊起來

效果

字型開始為 藍色,跟隨進度條變為 白色

代碼

<!DOCTYPE html><html lang="cmn-hans"><head>    <meta charset="utf-8">    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, minimum-scale=1, user-scalable=no">    <script>!function(e,t){function n(){t.body?t.body.style.fontSize=12*o+"px":t.addEventListener("DOMContentLoaded",n)}function d(){var e=i.clientWidth/10;i.style.fontSize=e+"px"}var i=t.documentElement,o=e.devicePixelRatio||1;if(n(),d(),e.addEventListener("resize",d),e.addEventListener("pageshow",function(e){e.persisted&&d()}),o>=2){var a=t.createElement("body"),s=t.createElement("p");s.style.border=".5px solid transparent",a.appendChild(s),i.appendChild(a),1===s.offsetHeight&&i.classList.add("hairlines"),i.removeChild(a)}}(window,document);</script>    <title>進度條漸層</title>    <style type="text/css">        * {            box-sizing: border-box;        }        .box{            position: fixed;            left: 50%;            transform: translate(-50%);            width: 320px;            height: 44px;            background-color: white;            color: #00a0e9;            border: 1px solid #00a0e9;        }        .process{            position: absolute;            height: 100%;            width: 0;            background: #00a0e9;            color: white;            overflow: hidden;            z-index: 10;        }        .process-text{            position: absolute;            left: 160px;            top: 50%;            font-size: 12px;            transform: translate(-50%, -50%);            white-space: nowrap;        }    </style>    <script>        function process() {            var t = 1;            var max = 320;            var progress = document.getElementById("process");            var process_texts = document.getElementsByClassName("process-text");            var interval = setInterval(function () {                if (t == max) {                    clearInterval(interval);                    for (var i in process_texts){                        process_texts[i].innerHTML = '完成'                    }                } else {                    progress.style.width = t + "px";                    for (var i in process_texts){                        process_texts[i].innerHTML = '進度' + (t / max * 100).toFixed(2) + "%"                    }                    t++;                }            }, 10)        }    </script></head><body><p class="box" onclick="process()">    <p class="process" id="process">        <span class="process-text">點擊開始</span>    </p>    <span class="process-text">點擊開始</span></p></body></html>

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

怎麼用CSS設定記錄使用者密碼

重繪與重排如何使用

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.