使用純CSS實現(xiàn)網(wǎng)頁閱讀進(jìn)度條

為了構(gòu)建一個閱讀進(jìn)度條,即顯示用戶向下滾動時閱讀文章的進(jìn)度,很難不考慮 JavaScript。但是,事實證明,您也可以使用純 CSS 構(gòu)建閱讀進(jìn)度條。
從本質(zhì)上講,一個名為 animation-timeline 的新實驗性 CSS 屬性可以讓你指定用于控制 CSS 動畫進(jìn)度的時間軸。我們將用它來創(chuàng)建閱讀進(jìn)度條。
首先,我們需要定義一個用作進(jìn)度條的 div
元素。我們將使用一個固定在視口頂部的容器來包裝這個 div
。這將確保用戶向下滾動頁面時進(jìn)度條始終可見。
<div class="progress-bar-container"> <div class="progress-bar"></div> </div> <div class="content"> <!-- content goes here --> </div>
接下來,我們將定義進(jìn)度條的樣式。我們將設(shè)置 progress-bar-container
固定在視口頂部并調(diào)整其背景顏色,該顏色始終對用戶可見。我們還將 progress-bar
設(shè)置為 100%
寬度。
.progress-bar-container { position: fixed; top: 0px; width: 100%; background: #6c2fa2; z-index: 999; }
現(xiàn)在,為了使進(jìn)度條動畫化,我們將為 progress-bar
使用不同的背景顏色,并將其高度設(shè)置為 7px
。我們還將 animation-name
設(shè)置為 width
,這實際上將進(jìn)度條的寬度從 0
動畫到 100%
。
最后,我們將 animation-timeline
設(shè)置為 scroll(y)
,將動畫時間軸綁定到視口的垂直滾動位置。這將確保當(dāng)用戶向下滾動頁面時進(jìn)度條具有動畫效果。
.progress-bar { height: 7px; background: #e131ff; animation-name: width; /* animation timeline is tied to vertical scroll position */ animation-timeline: scroll(y); } @keyframes width { from { width: 0 } to { width: 100% } }
就是這樣!您可以在下面看到它的實際效果。
由于 animation-timeline
屬性仍處于實驗階段,因此并非所有瀏覽器(準(zhǔn)確地說是 Firefox 和 Safari)都支持它。
您可以檢查瀏覽器的兼容性并據(jù)此使用。
以上就是使用純CSS實現(xiàn)網(wǎng)頁閱讀進(jìn)度條的詳細(xì)內(nèi)容,更多關(guān)于CSS網(wǎng)頁閱讀進(jìn)度條的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
僅僅使用 HTML/CSS 實現(xiàn)各類進(jìn)度條的方式匯總
這篇文章主要介紹了僅僅使用 HTML/CSS 實現(xiàn)各類進(jìn)度條的方式匯總,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-11-08css 實現(xiàn)圓形漸變進(jìn)度條效果的示例代碼
這篇文章主要介紹了css 實現(xiàn)圓形漸變進(jìn)度條效果的示例代碼,代碼簡單易懂,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-09-24利用css3實現(xiàn)進(jìn)度條效果及動態(tài)添加百分比
這篇文章主要介紹了利用css3實現(xiàn)進(jìn)度條效果及動態(tài)添加百分比,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來2020-06-01css 橫向進(jìn)度條和豎向進(jìn)度條實現(xiàn)代碼
這篇文章主要介紹了css 橫向進(jìn)度條和豎向進(jìn)度條實現(xiàn)代碼,有時候看一些不錯的滾動條效果不錯,這里給大家分享一下如果用css實現(xiàn)2020-04-14使用CSS3實現(xiàn)環(huán)形進(jìn)度條效果
這篇文章主要介紹了使用CSS3實現(xiàn)環(huán)形進(jìn)度條效果,需要的朋友可以參考下2018-06-01css 進(jìn)度條的文字根據(jù)進(jìn)度漸變的示例代碼
這篇文章主要介紹了css 進(jìn)度條的文字根據(jù)進(jìn)度漸變的示例代碼,介紹了進(jìn)度條里面的文字需要根據(jù)進(jìn)度的長度而變化,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一2018-01-09手把手教你用CSS實現(xiàn)帶箭頭的流程進(jìn)度條
這篇文章主要給大家介紹了利用CSS實現(xiàn)帶箭頭的流程進(jìn)度條大方法,文中給出了詳細(xì)的示例代碼,對大家具有一定的參考價值,有需要的朋友們一起來看看吧。2017-01-22CSS實現(xiàn)進(jìn)度條和訂單進(jìn)度條
這篇文章主要為大家詳細(xì)介紹了CSS進(jìn)度條和訂單進(jìn)度條的制作方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-07-12- 純css做漂亮好看的進(jìn)度條,看了絕對不后悔。2010-05-31
- [html] <style> #graphbox{ border:1px solid #e7e7e7; padding:10px; width:250px; background-color:#f8f8f8; margin:5px 0; } #graphbox h2{ color:#662009-03-30