自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

僅用 CSS 實(shí)現(xiàn)網(wǎng)頁(yè)閱讀進(jìn)度條

開(kāi)發(fā) 前端
我們將定義進(jìn)度條的樣式。我們將設(shè)置 progress-bar-container 固定在視口頂部并調(diào)整其背景顏色,該顏色始終對(duì)用戶可見(jiàn)。我們還將 progress-bar 設(shè)置為 100% 寬度。

為了構(gòu)建一個(gè)閱讀進(jìn)度條,即顯示用戶向下滾動(dòng)時(shí)閱讀文章的進(jìn)度,很難不考慮 JavaScript。但是,事實(shí)證明,您也可以使用純 CSS 構(gòu)建閱讀進(jìn)度條。

從本質(zhì)上講,一個(gè)名為 animation-timeline[1] 的新實(shí)驗(yàn)性 CSS 屬性可以讓你指定用于控制 CSS 動(dòng)畫(huà)進(jìn)度的時(shí)間軸。我們將用它來(lái)創(chuàng)建閱讀進(jìn)度條。

首先,我們需要定義一個(gè)用作進(jìn)度條的 div 元素。我們將使用一個(gè)固定在視口頂部的容器來(lái)包裝這個(gè) div 。這將確保用戶向下滾動(dòng)頁(yè)面時(shí)進(jìn)度條始終可見(jiàn)。

<div class="progress-bar-container">
    <div class="progress-bar"></div>
</div>
<div class="content">
    <!-- content goes here -->
</div>

接下來(lái),我們將定義進(jìn)度條的樣式。我們將設(shè)置 progress-bar-container 固定在視口頂部并調(diào)整其背景顏色,該顏色始終對(duì)用戶可見(jiàn)。我們還將 progress-bar 設(shè)置為 100% 寬度。

.progress-bar-container {
    position: fixed;
    top: 0px;
    width: 100%;
    background: #6c2fa2;
    z-index: 999;
}

現(xiàn)在,為了使進(jìn)度條動(dòng)畫(huà)化,我們將為 progress-bar 使用不同的背景顏色,并將其高度設(shè)置為 7px 。我們還將 animation-name 設(shè)置為 width ,這實(shí)際上將進(jìn)度條的寬度從 0 動(dòng)畫(huà)到 100%。

最后,我們將 animation-timeline 設(shè)置為 scroll(y) ,將動(dòng)畫(huà)時(shí)間軸綁定到視口的垂直滾動(dòng)位置。這將確保當(dāng)用戶向下滾動(dòng)頁(yè)面時(shí)進(jìn)度條具有動(dòng)畫(huà)效果。

.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% }
}

就是這樣!您可以在下面看到它的實(shí)際效果。

圖片圖片

由于 animation-timeline 屬性仍處于實(shí)驗(yàn)階段,因此并非所有瀏覽器(準(zhǔn)確地說(shuō)是 Firefox 和 Safari)都支持它。

您可以檢查瀏覽器的兼容性[2]并據(jù)此使用。

圖片圖片

參考資料

[1]animation-timeline: https://developer.mozilla.org/en-US/docs/Web/CSS/animation-timeline

[2]瀏覽器的兼容性: https://developer.mozilla.org/en-US/docs/Web/CSS/animation-timeline#browser_compatibility

責(zé)任編輯:武曉燕 來(lái)源: 獨(dú)立開(kāi)發(fā)者張張
相關(guān)推薦

2024-08-06 14:29:37

2013-03-12 10:35:06

CSS 3

2024-12-02 09:37:51

2015-07-31 11:19:43

數(shù)字進(jìn)度條源碼

2023-12-11 17:15:05

應(yīng)用開(kāi)發(fā)波紋進(jìn)度條ArkUI

2021-11-02 07:44:36

CSS 技巧進(jìn)度條

2024-06-13 08:15:00

2009-08-17 15:48:47

C# WinForm進(jìn)

2009-08-17 14:41:47

C#進(jìn)度條實(shí)現(xiàn)

2023-07-18 15:49:22

HTMLCSS

2009-07-21 14:49:55

XmlHttpRequ文件上傳進(jìn)度條

2011-07-05 15:16:00

QT 進(jìn)度條

2024-07-25 08:55:47

進(jìn)度條水缸進(jìn)度動(dòng)畫(huà)效果

2009-11-24 15:23:50

PHP文件上傳進(jìn)度條

2009-08-17 17:15:48

C# 進(jìn)度條效果

2012-07-13 13:52:54

Canvas

2024-04-01 08:18:52

CSSHTMLWeb

2009-08-17 14:36:15

C#進(jìn)度條實(shí)現(xiàn)

2009-06-06 18:54:02

JSP編程進(jìn)度條

2012-01-17 13:58:17

JavaSwing
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)