錘子手機官網(wǎng)的3d懸浮效果

CSS:

*{
      box-sizing: border-box;
    }
    #test {
      position: relative;
      width: 1100px;
      height: 600px;
      background: #fff;
      padding: 100px 0;
      margin: 50px auto;
      border: 1px solid #ddd;
      perspective: 1000px;
    }
    #banner {
      height: 400px;
      width: 900px;
      margin: 0 auto;
      background: #37d7b2;
      transition: transform .1s;
      box-shadow: 0 0 15px rgba(0,0,0,.25);
      text-align: center;
      line-height: 400px;
      font-size: 80px;
      color: #fff;
    }
    body {
      background: #ddd;
      padding: 20px;
    }

HTML:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>3d-hover</title>
</head>
<body>
  <div id="test">
    <div id="banner">banner</div>
  </div>
</body>
</html>

JS:

  $('#test').on('mousemove', function(e) {
    var offset = $('#test').offset();
    var x = e.pageX - offset.left,
        y = e.pageY - offset.top;

    var centerX = $('#test').outerWidth() /2;
    var centerY = $('#test').outerHeight() /2;

    var deltaX = x - centerX;
    var deltaY = y - centerY;

    var percentX = deltaX / centerX;
    var percentY = deltaY / centerY;

    var deg = 10;

    $('#banner').css({
      transform: 'rotateX(' + deg*-percentY + 'deg)' + 'rotateY(' + deg*percentX + 'deg)'
    })
  })

  $('#test').on('mouseleave', function(){
    $('#banner').css({
      transform: ''
    })
  })
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽?zāi)J的外補...
    _Yfling閱讀 14,168評論 1 92
  • 在現(xiàn)在的前端開發(fā)中,前后端分離、模塊化開發(fā)、版本控制、文件合并與壓縮、mock數(shù)據(jù)等等一些原本后端的思想開始...
    Charlot閱讀 5,669評論 1 32
  • 最近在學(xué)習(xí) Webpack,網(wǎng)上大多數(shù)入門教程都是基于 Webpack 1.x 版本的,我學(xué)習(xí) Webpack 的...
    My_Oh_My閱讀 8,335評論 40 247
  • gulpjs是一個前端構(gòu)建工具,與gruntjs相比,gulpjs無需寫一大堆繁雜的配置參數(shù),API也非常簡單,學(xué)...
    井皮皮閱讀 1,402評論 0 10
  • 其實,說到底,世間何事,離得了一個緣字,眾生,因了緣而流落在人間,亦是因了緣,而相遇相知,縱然是久別重逢,也少不了...
    檸C小姐閱讀 323評論 0 0

友情鏈接更多精彩內(nèi)容