欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iphone劉海屏頁面適配方法

 更新時間:2019年05月07日 15:59:39   作者:熬過春夏秋冬  
這篇文章主要介紹了iphone劉海屏頁面適配方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

1. 下面是實現(xiàn)iphonex 劉海屏前端頁面適配的一個插值算法小案例

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
    body, ul {
      margin: 0;
    }

    ul {
      padding-left: 10px;
    }

    li {
      list-style: none;
    }

    .phone {
      position: relative;
      width: 600px;
      height: 300px;
      border: 10px solid #000;
      border-radius: 30px;
      margin: 100px auto 0;
    }

    .content, .content ul {
      width: 100%;
      height: 100%;
    }

    .content {
      overflow-x: hidden;
      overflow-y: scroll;
    }

    .camera {
      position: absolute;
      top: 60px;
      left: 0;
      width: 26px;
      height: 180px;
      background-color: black;
      border-radius: 0 30px 30px 0;
    }

    li + li {
      border-top: 1px solid #ccc;
    }

    li {
      font-size: 16px;
      padding: 5px;
    }

    *::-webkit-scrollbar {
      padding-left: 100px;
    }
  </style>
</head>
<body>
<div class="phone">
  <div class="content">
    <ul>
      <li>SweeTango</li>
      <li>Pacific Rose</li>
      <li>SnapDragon</li>
      <li>Envy</li>
      <li>Koru (Plumac)</li>
      <li>Pink Lady (Cripps Pink)</li>
      <li>HoneYcrisp</li>
      <li>Hoyal Gala</li>
      <li>Macoun</li>
      <li>SweeTango</li>
      <li>Pacific Rose</li>
      <li>SnapDragon</li>
      <li>Envy</li>
      <li>Koru (Plumac)</li>
      <li>Pink Lady (Cripps Pink)</li>
      <li>HoneYcrisp</li>
      <li>Hoyal Gala</li>
      <li>Macoun</li>
      <li>Macoun</li>
      <li>SweeTango</li>
      <li>Pacific Rose</li>
      <li>SnapDragon</li>
      <li>Envy</li>
      <li>Koru (Plumac)</li>
      <li>Pink Lady (Cripps Pink)</li>
      <li>HoneYcrisp</li>
      <li>Hoyal Gala</li>
      <li>Macoun</li>
      <div class="camera"></div>
    </ul>
  </div>
</div>
<script>
  ~~function () {
    var thresh = 20;
    var maxoffset = 50;
    var aLi = document.querySelectorAll('li');
    var oCamera = document.querySelector('.camera');
    var oContent = document.querySelector('.content')
    var camPs = oCamera.getBoundingClientRect();


    ~~function () {
      oContent.onscroll = arguments.callee;
      for (var item of aLi) {
        var itemRect = item.getBoundingClientRect();
        var dtf = itemRect.bottom - camPs.top
        var dtb = itemRect.bottom - camPs.bottom
        if (Math.abs(dtf) < 20) {
          item.style.transform = 'translateX(' + lerp(0, 30, cal(dtf, 20)) + "px)";

        } else if (dtf > 20 && dtb < -20) {
          item.style.transform = 'translateX(' + 30 + "px)";
        } else if (Math.abs(dtb) <20) {
          item.style.transform = 'translateX(' + lerp(30, 0, cal(dtb, 20)) + "px)";
        } else {
          //全部移除攝像頭區(qū)域
          item.style.transform = 'translateX(' + 0 + "px)";
        }
      }
    }()
  }()

  /**
   * @param 插值算法
   * @param p1 初始化狀態(tài)
   * @param p2 結束狀態(tài)
   * @param t  時間函數(shù) (0-100%)
   *
   * 返回p1 到 p2 之間的值
   */
  function lerp(p1, p2, t) {
    return (p2 - p1) * t + p1
  }

  function cal(dis, thr) {
    return (dis + thr) / (thr * 2)
  }
</script>
</body>
</html>

以上所述是小編給大家介紹的iphone劉海屏頁面適配方法詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • vscode中eslint配置保存自動修復代碼示例詳解

    vscode中eslint配置保存自動修復代碼示例詳解

    vscode根據(jù)eslint保存?動修復配置,下面這篇文章主要給大家介紹了關于vscode中eslint配置保存自動修復代碼的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-12-12
  • 詳解vue中屬性執(zhí)行順序

    詳解vue中屬性執(zhí)行順序

    這篇文章主要介紹了vue中屬性執(zhí)行順序,選項的執(zhí)行順序是 props -> data -> computed -> watch -> created -> mounted -> methods,具體詳細內(nèi)容本文給大家講解的非常詳細,需要的朋友可以參考下
    2023-09-09
  • vue-Router安裝過程及原理詳細

    vue-Router安裝過程及原理詳細

    路由是網(wǎng)絡工程里面的專業(yè)術語,就是通過互聯(lián)把信息從源地址傳輸?shù)侥康牡刂返幕顒?。本質(zhì)上就是一種對應關系。分為前端路由和后端路由。小編將再下面文章為大家做詳細介紹,感興趣的小伙伴請和小編一起來學習吧
    2021-09-09
  • 如何將百度地圖包裝成Vue的組件的方法步驟

    如何將百度地圖包裝成Vue的組件的方法步驟

    這篇文章主要介紹了如何將百度地圖包裝成Vue的組件的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-02-02
  • Vue3?封裝?Element?Plus?Menu?無限級菜單組件功能的詳細代碼

    Vue3?封裝?Element?Plus?Menu?無限級菜單組件功能的詳細代碼

    本文分別使用?SFC(模板方式)和?tsx?方式對?Element?Plus?*el-menu*?組件進行二次封裝,實現(xiàn)配置化的菜單,有了配置化的菜單,后續(xù)便可以根據(jù)路由動態(tài)渲染菜單,對Vue3?無限級菜單組件相關知識感興趣的朋友一起看看吧
    2022-09-09
  • vue elementUI table表格數(shù)據(jù) 滾動懶加載的實現(xiàn)方法

    vue elementUI table表格數(shù)據(jù) 滾動懶加載的實現(xiàn)方法

    這篇文章主要介紹了vue elementUI table表格數(shù)據(jù)滾動懶加載的實現(xiàn)方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-04-04
  • 一起來學習Vue的生命周期

    一起來學習Vue的生命周期

    這篇文章主要為大家詳細介紹了Vue的生命周期,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • vue項目關閉eslint校驗

    vue項目關閉eslint校驗

    eslint是一個JavaScript的校驗插件,通常用來校驗語法或代碼的書寫風格。這篇文章主要介紹了vue項目關閉eslint校驗,需要的朋友可以參考下
    2018-03-03
  • vue中使用loadsh的debounce防抖函數(shù)問題

    vue中使用loadsh的debounce防抖函數(shù)問題

    這篇文章主要介紹了vue中使用loadsh的debounce防抖函數(shù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 五分鐘理解keep?alive用法及原理

    五分鐘理解keep?alive用法及原理

    這篇文章主要為大家介紹了keep?alive用法及原理示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07

最新評論