• JS动态计算rem


    rem 量图计算公式:

    获取比值:设备尺寸/设计图尺寸 

    例如:设备宽度尺寸为   375px 、设计图尺寸为750px,计算获得比值为0.5,量得设计图上某个图片元素宽度为 100px,实际在375px宽度的设备上此元素为 100 * 0.5 = 50 px。

    故:

    设置html 下font-size 默认值为 0.5px,为了计算方便一般会以100倍计算,也就是50px,如下:

    @media screen and (min-375px) {
        html {
            font-size: 50px;
        }
    }

    如上,此时在375的设备上 1rem  =  50px,在写css 的时候设置其宽度为0.5rem即可(.5rem 就等于 50px 的实际设备上的宽度,换算到ui设计图上,也就是 100px)

    img.test_img{
        width : .5rem  
    }

    1、什么是rem

          rem是相对于根元素(html标签)的字体大小的单位。

    2、rem实现适配的原理

           核心思想:百分比布局可实现响应式布局,而rem相当于百分比布局。

      实现手段:动态获取当前视口宽度width,除以一个固定的数n,得到rem的值。表达式为rem = width / n。

      通过此方法,rem大小始终为width的n等分。

    3、动态计算rem

          let init = () => {
                let width = document.documentElement.clientWidth;
                document.documentElement.style.fontsize = width / 10 + 'px';
                console.log(width);
            }
            //首次加载是计算
            init();

            //添加监听,窗口发生变化时计算
            window.addEventListener('resize',init);
            window.addEventListener('orientationchange',init);

  • 相关阅读:
    [LeetCode] Range Sum Query
    [LeetCode] Longest Increasing Subsequence
    [LeetCode] Bulls and Cows
    [LeetCode] Serialize and Deserialize Binary Tree
    [LeetCode] Find Median from Data Stream
    [LeetCode] Convert Sorted List to Binary Search Tree
    [LeetCode] Nim Game
    [LeetCode] Word Pattern
    安装配置说明与注意
    java.lang.OutOfMemoryError: PermGen space及其解决方法
  • 原文地址:https://www.cnblogs.com/lan-cheng/p/12912884.html
Copyright © 2020-2023  润新知