麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 開發(fā) > HTML5 > 正文

HTML5 3D書本翻頁(yè)動(dòng)畫的實(shí)現(xiàn)示例

2024-09-05 07:23:00
字體:
供稿:網(wǎng)友

這是一款十分炫酷的HTML5 3D書本翻頁(yè)動(dòng)畫,效果相對(duì)比較簡(jiǎn)單,拖拽鼠標(biāo)模擬用手翻頁(yè),更漂亮的是翻頁(yè)過程中,呈現(xiàn)出逼真的3D立體效果。書本中的文字和圖片也會(huì)3D展示,非常酷。

HTML代碼

 <div class="back-cover p3d">        <div class="page back flip"></div>        <div class="page front p3d">            <div class="shadow"></div>            <div class="dino"></div>        </div>    </div>    <div class="front-cover p3d">        <div class="page front flip p3d">            <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam fermentum nisl quis nulla eleifend dignissim. Curabitur varius lobortis tincidunt. Maecenas gravida, nulla quis luctus imperdiet, ipsum nibh consectetur ante, in sodales massa tortor eget neque. Donec porta ligula massa, id sagittis est. Ut nisl tellus, faucibus nec feugiat ut, laoreet iaculis felis. Suspendisse ultrices mauris vel tellus suscipit commodo. Integer vitae tortor erat. Pellentesque non tempor nisi.</p>        </div>        <div class="page back"></div>    </div></div>

CSS代碼

.book {    width: 300px;    height: 300px;    margin-top: -150px;    position: absolute;    left: 50%;    top: 50%;    -webkit-transform: rotateX(60deg);    -moz-transform: rotateX(60deg);    -ms-transform: rotateX(60deg);    -o-transform: rotateX(60deg);    transform: rotateX(60deg);    -webkit-user-select: none;    -moz-user-select: none;    -ms-user-select: none;    -o-user-select: none;    user-select: none;}.page {    width: 300px;    height: 300px;    padding: 1em;    position: absolute;    left: 0;    top: 0;    text-indent: 2em;}.front {    background-color: #d93e2b;}.back {    background-color: #fff;}.front-cover {    cursor: move;    -webkit-transform-origin: 0 50%;    -moz-transform-origin: 0 50%;    -ms-transform-origin: 0 50%;    -o-transform-origin: 0 50%;    transform-origin: 0 50%;    -webkit-transform: rotateY(0deg);    -moz-transform: rotateY(0deg);    -ms-transform: rotateY(0deg);    -o-transform: rotateY(0deg);    transform: rotateY(0deg);}.front-cover .back {    background-image: url(mdn.png);    background-repeat: no-repeat;    background-position: 50% 50%;    -webkit-transform: translateZ(3px);    -moz-transform: translateZ(3px);    -ms-transform: translateZ(3px);    -o-transform: translateZ(3px);    transform: translateZ(3px);}.back-cover .back {    -webkit-transform: translateZ(-3px);    -moz-transform: translateZ(-3px);    -ms-transform: translateZ(-3px);    -o-transform: translateZ(-3px);    transform: translateZ(-3px); }.p3d {    -webkit-transform-style: preserve-3d;    -moz-transform-style: preserve-3d;    -ms-transform-style: preserve-3d;    -o-transform-style: preserve-3d;    transform-style: preserve-3d;}.flip {    -webkit-transform: rotateY(180deg);    -moz-transform: rotateY(180deg);    -ms-transform: rotateY(180deg);    -o-transform: rotateY(180deg);    transform: rotateY(180deg);}.dino,.shadow {    width: 196px;    height: 132px;    position: absolute;    left: 60px;    top: 60px;    -webkit-transform-origin: 0 100%;    -moz-transform-origin: 0 100%;    -ms-transform-origin: 0 100%;    -o-transform-origin: 0 100%;    transform-origin: 0 100%;}.dino {    background: url(dino.png) no-repeat;}.shadow {    background: url(shadow.png) no-repeat;}

JavaScript代碼

(function (window, document) {    var prefixes = ['Webkit', 'Moz', 'ms', 'O', ''],        book = document.querySelectorAll('.book')[0],        page = document.querySelectorAll('.front-cover')[0],        dino = document.querySelectorAll('.dino')[0],        shadow = document.querySelectorAll('.shadow')[0],        hold = false,        centerPoint = window.innerWidth / 2,        pageSize = 300,        clamp = function (val, min, max) {            return Math.max(min, Math.min(val, max));        };    page.onmousedown = function () {        hold = true;    };    window.onmouseup = function () {        if (hold) {            hold = false;        }    };    window.onresize = function () {        centerPoint = window.innerWidth / 2;    };    window.onmousemove = function (evt) {        if (!hold) {            return;        }        var angle = clamp((centerPoint - evt.pageX + pageSize) / pageSize * -90, -180, 0),            i, j;        for (i = 0, j = prefixes.length; i < j; i++) {            book.style[prefixes[i] + 'Transform'] = 'rotateX(' + (60 + angle / 8) + 'deg)';            page.style[prefixes[i] + 'Transform'] = 'rotateY(' + angle + 'deg)';            dino.style[prefixes[i] + 'Transform'] = 'rotateX(' + (angle / 2) + 'deg)';            shadow.style[prefixes[i] + 'Transform'] = 'translateZ(1px) skewX(' + (angle / 8) + 'deg)';        }    };})(window, document);

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持武林網(wǎng)。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 北京一级毛片 | 欧美高清另类自拍视频在线看 | 成年免费视频黄网站在线观看 | 欧美一级在线免费 | 欧美伦理一区二区 | 欧美黄色试片 | 久久成人精品视频 | 国产乱子视频 | 人与xxxxhdxxxhdxx| 久久精品欧美视频 | 国产高潮好爽好大受不了了 | 性片免费看 | 日本成年免费网站 | 麻豆小视频在线观看 | 日日噜噜噜噜久久久精品毛片 | 成人高清网站 | 一二区成人影院电影网 | 免费国产一级淫片 | 免费视频观看 | 色污视频| 久久国产亚洲视频 | 成年免费在线视频 | 国产成人精品一区二区视频免费 | 亚洲男人的天堂在线视频 | 日韩激情在线视频 | 国产日产精品一区二区三区四区 | 一级黄色在线免费观看 | 国产一级性生活视频 | 蜜桃av网 | 超久久 | 久久久在线免费观看 | 黄色网址在线视频 | 色屁屁xxxxⅹ在线视频 | 国产欧美在线一区二区三区 | xxxxhd18hd日本hd | 精品成人av一区二区在线播放 | 特级黄毛片 | 99麻豆久久久国产精品免费 | aa级黄色片| 国产电影精品久久 | 久久久久国产成人免费精品免费 |