亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

CSS怎么實現視差滾動效果

發布時間:2021-08-10 23:21:23 來源:億速云 閱讀:269 作者:chen 欄目:web開發

這篇文章主要介紹“CSS怎么實現視差滾動效果”,在日常操作中,相信很多人在CSS怎么實現視差滾動效果問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”CSS怎么實現視差滾動效果”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

一、效果Demo先行~
視差滾動效果大家可能都聽過,基本上都是JS實現的,有對應插件 - Parallax.js .
實際上,如果你對兼容性要求不是很高,比方說忽略IE瀏覽器,則我們使用簡單的幾行CSS代碼就可以實現視差滾動效果了。
對于效果展示,先看效果是最能引起興趣,激發學習熱情的,如下(IE9+):
進入Demo滾動滾動條,最好鼠標慢慢拖動,效果更明顯——表情花朵等小圖標在手機圖片上方飛動的視差感覺。目前,Chrome以及FireFox等瀏覽器(不包括IE11在內的瀏覽器)都是有效果。
二、CSS實現的原理
原理說透了很簡單,下面幾個關鍵CSS聲明起的作用(紅色高亮部分):

代碼如下:


.container {
/* 滾動容器 */
perspective: 1px;
padding: 0; height: calc(100vh - 300px); overflow: auto;
}
.box {
/* 視差元素的父級需要3D視角 */
height: 1280px;
transform-style: preserve-3d;
position: relative;
}
.background {
/* 滾動比較慢的背景元素 */
position: absolute; left: 50%;
transform: translate3D(-50%, -120px, -1px) scale(2);
}

大家可以注意上面紅色高亮代碼出現了一個1px(來自perspective), 一個-1px(來自transform)以及scale(2)中的2. 這幾個數字之間有什么關系呢?
我們先看下面這個3D視角示意圖(來自 這里 ):

CSS怎么實現視差滾動效果

 
當我們在屏幕前面1個單位的地方,看屏幕后面1個單位的元素,肉眼所見的畫面大小只有實際的1/2,即所謂的近大遠小。此時scale(2)讓內容放大到原來2倍,正好在平面上看上去好像是原來大小。
雖然肉眼所見體積似乎是1:1,但是,滾動時候的位移變化還是1:2, 應該很好理解。舉個極端的例子,我們坐在電瓶車上看天上的月亮,雖然車子在40碼的速度奔啊奔,但是,好像月亮的位置沒有移動,一直就在頭頂。網頁中的3D就是模擬真實世界的3D效果,因此,也會有這種視差體驗。

到此,關于“CSS怎么實現視差滾動效果”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

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

css
AI

德令哈市| 高州市| 兴义市| 金沙县| 濮阳市| 金门县| 乌兰县| 绥芬河市| 内丘县| 连州市| 广德县| 台江县| 南皮县| 嫩江县| 建昌县| 乐陵市| 郴州市| 益阳市| 武陟县| 万年县| 夏邑县| 保康县| 兴义市| 滨州市| 汉源县| 兴业县| 盘锦市| 肇庆市| 竹山县| 田林县| 武乡县| 迭部县| 封开县| 宁城县| 宜良县| 六安市| 吴忠市| 灌云县| 象州县| 介休市| 定远县|