中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CSS3怎么實現側邊欄展開收起動畫

發布時間:2021-08-10 18:31:19 來源:億速云 閱讀:225 作者:chen 欄目:web開發

這篇文章主要講解了“CSS3怎么實現側邊欄展開收起動畫”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“CSS3怎么實現側邊欄展開收起動畫”吧!

@keyframes

規則用于創建動畫。

@keyframes 中規定某項 CSS 樣式,就能創建由當前樣式逐漸改為新樣式的動畫效果

@keyframes 中創建動畫時,請把它捆綁到某個選擇器,否則不會產生動畫效果。

通過規定至少以下兩項 CSS3 動畫屬性,即可將動畫綁定到選擇器:

      規定動畫的名稱
      規定動畫的時長

animation


animation 屬性是一個簡寫屬性,用于設置動畫屬性:

animation-name:規定 @keyframes 動畫的名稱。
animation-duration:規定動畫完成一個周期所花費的秒或毫秒。默認是 0。
animation-timing-function:規定動畫的速度曲線。默認是 "ease"。
animation-delay:規定動畫何時開始。默認是 0
animation-iteration-count:規定動畫被播放的次數。默認是 1。
animation-direction:規定動畫是否在下一周期逆向地播放。默認是 "normal"。
animation-fill-mode:規定對象動畫時間之外的狀態

側邊欄實現

代碼如下:


/* 動畫定義 */
@-webkit-keyframes move_right {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(120px);
        transform: translateX(120px);
    }
}
@keyframes move_right {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(120px);
        transform: translateX(120px);
    }
}
@-webkit-keyframes move_left {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translateX(-120px);
        transform: translateX(-120px);
    }
}
@keyframes move_left {
    from {
        opacity: 1;
    }
    to {
        opacity: 0;
        -webkit-transform: translateX(-120px);
        transform: translateX(-120px);
    }
}
@-webkit-keyframes move_up {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(-250px);
        transform: translateY(-250px);
    }
}
@keyframes move_up {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(-250px);
        transform: translateY(-250px);
    }
}

代碼如下:


/* 動畫綁定 */
.move_right {
    -webkit-animation-name            : move_right;
    animation-name            : move_right;
    -webkit-animation-duration        : 1s;
    animation-duration        : 1s;
    -webkit-animation-iteration-count : 1;
    animation-iteration-count : 1;
    -webkit-animation-fill-mode : forwards;
    animation-fill-mode : forwards;
}
.move_left {
    -webkit-animation-name            : move_left;
    animation-name            : move_left;
    -webkit-animation-duration        : 1s;
    animation-duration        : 1s;
    -webkit-animation-iteration-count : 1;
    animation-iteration-count : 1;
    -webkit-animation-fill-mode : forwards;
    animation-fill-mode : forwards;
}
.move_up {
    -webkit-animation-name            : move_up;
    animation-name            : move_up;
    -webkit-animation-duration        : 1s;
    animation-duration        : 1s;
    -webkit-animation-iteration-count : 1;
    animation-iteration-count : 1;
    -webkit-animation-fill-mode : forwards;
    animation-fill-mode : forwards;
}
.fadeIn {
    -webkit-transform : translateX(120px);
    transform : translateX(120px);
    opacity: 1;
}
.fadeInUp {
    -webkit-transform : translateY(-250px);
    transform : translateY(-250px);
    opacity: 1;
    -webkit-transition :-webkit-transform .2s ease-out,opacity .2s ease-out;
    transition :transform .2s ease-out, opacity .2s ease-out;
}
.fadeOutLeft {
    -webkit-transform : translateX(-120px);
    transform : translateX(-120px);
    opacity: 0.0;
    -webkit-transition :-webkit-transform .2s ease-out,opacity .2s ease-out;
    transition :transform .2s ease-out, opacity .2s ease-out;
}

html

代碼如下:


<!doctype html>
<html lang="en" class="fullHeight">
<head>
    <meta charset="UTF-8">
    <title>demo</title>
    <link rel="stylesheet" type="text/css" href="sidebar.css">
</head>
<body class="fullHeight">
    <div class='sidebar fullHeight'>sidebar</div>
    <div class="controller">
        <div>
            <button onclick="fadeIn()">淡進</button>
            <button onclick="fadeOut()">淡出</button>
        </div>
        <div>
            <button onclick="fadeInUp()">向上淡進</button>
            <button onclick="fadeOutLeft()">向左淡出</button>
        </div>
    </div>
    <script src="sidebarEffects.js"></script>
</body>
</html>

加入JS

代碼如下:


<script>
var sidebarEl = document.querySelector(".sidebar");
function fadeIn (e) {
    sidebarEl.className = 'sidebar fullHeight';
    sidebarEl.style.top = '0px';
    sidebarEl.style.left = '0px';
    sidebarEl.classList.add('move_right');
}
function fadeOut (e) {
    sidebarEl.className = 'sidebar fullHeight';
    sidebarEl.style.left = '120px';
    sidebarEl.classList.add('move_left');
}
function fadeInUp(e) {
    sidebarEl.className = 'sidebar fullHeight';
    sidebarEl.style.top = '250px';
    sidebarEl.style.left = '120px';
    sidebarEl.classList.add('move_up');
}
function fadeOutLeft(e) {
    sidebarEl.className = 'sidebar fullHeight';
    sidebarEl.style.top = '0px';
    sidebarEl.style.left = '120px';
    sidebarEl.classList.add('move_left');
}
</script>

感謝各位的閱讀,以上就是“CSS3怎么實現側邊欄展開收起動畫”的內容了,經過本文的學習后,相信大家對CSS3怎么實現側邊欄展開收起動畫這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

遵义市| 昔阳县| 大荔县| 英山县| 嘉义市| 赫章县| 正宁县| 云阳县| 临朐县| 桂阳县| 鄂尔多斯市| 丰城市| 陕西省| 梅河口市| 秦安县| 湖南省| 垣曲县| 岳阳县| 达日县| 临泽县| 平谷区| 神池县| 庆云县| 原阳县| 钦州市| 茶陵县| 三门峡市| 九龙坡区| 蓝山县| 察隅县| 马关县| 徐闻县| 肥西县| 台北市| 麻江县| 惠安县| 大埔区| 安仁县| 新竹市| 安福县| 清镇市|