在編寫網頁時,CSS3是不可或缺的一部分。然而,有時候我們需要停止CSS3的運行,通常出現在以下兩種情況:
第一,頁面的某一部分使用了CSS3動畫效果,但用戶滾動到該部分時效果又會重復播放,這時我們就需要停止動畫的運行。
// CSS樣式 .animation { animation-name: example; animation-duration: 2s; animation-iteration-count: infinite; } // JS代碼 (使用JQuery) $(window).scroll(function() { var position = $(".animation").offset().top; var screenBottom = $(window).scrollTop() + $(window).height(); if (screenBottom >position && position >$(window).scrollTop()) { //開始播放動畫 $(".animation").css("animation-play-state", "running"); } else { //停止播放動畫 $(".animation").css("animation-play-state", "paused"); } });
上述代碼中,我們使用了JQuery庫監聽頁面的滾動事件,判斷當前區域是否可見。如果可見就啟動動畫,否則停止播放。
第二,我們可能因為某些原因需要手動停止所有CSS3的樣式,這種情況下我們可以使用一段JavaScript代碼:
// JS代碼 var styleSheets = document.styleSheets; for (var i = 0; i< styleSheets.length; i++) { var styleSheet = styleSheets[i]; if (styleSheet.disabled === true) { //如果樣式已經被禁用了,就不作處理 continue; } var rules = styleSheet.cssRules; for (var j = 0; j< rules.length; j++) { var rule = rules[j]; if (rule.type == CSSRule.STYLE_RULE) { //清空樣式 rule.style.cssText = ""; } } }
上述代碼會遍歷所有的樣式表和規則,將每個規則的樣式屬性清空,達到停止所有CSS3樣式的目的。
上一篇css3怎么建博客
下一篇css 固定高度內容縮放