首页 > 其他分享 >获取rem像素转换比例 flag为true返回数字

获取rem像素转换比例 flag为true返回数字

时间:2024-09-10 09:25:41浏览次数:11  
标签:return indexOf px Number flag rem true

// 获取rem像素转换比例 flag为true返回数字
export function getRem(px, flag) {
  px = (px || 0) + ''
  if (!(px.indexOf('%') !== -1 || px.indexOf('rem') !== -1)) {
    px = (Number(px) / 40) + 'rem'
  }

  if (flag) {
    return Number(px.replace('rem', ''))
  }
  return px
}

// 获取基于1366 1rem为40px的基本像素
export function getPx(rem, dom, type) {
  rem = (rem || 0) + ''
  if (rem.indexOf('%') !== -1) {
    return Number(rem.split('%')[0]) / 100 * dom.parentNode[{
      'w': 'offsetWidth',
      'h': 'offsetHeight',
      't': 'offsetTop',
      'l': 'offsetLeft'
    }[type || 'w']] / getPx(document.documentElement.style.fontSize) * 40
  }
  if (rem.indexOf('rem') !== -1) {
    return 40 * Number(rem.split('rem')[0])
  }

  if (rem.indexOf('px') !== -1) {
    return Number(rem.split('px')[0])
  }
  return Number(rem)
}

标签:return,indexOf,px,Number,flag,rem,true
From: https://www.cnblogs.com/baozhengrui/p/18405790

相关文章

  • Pr官版中国|Adobe Premiere Pro 最佳免费办公软件下载指南
    Pr官版中国|Adobe Premiere Pro 最佳免费办公软件下载指南Pr官版中国|AdobePremierePro最佳免费办公软件下载指南在数字时代,视频制作已经成为一种重要的沟通和表达方式。无论是个人创作者、小型企业还是大型公司,都需要一款强大的视频编辑软件来实现他们的创意。AdobePremiere......
  • 多连接数据库管理工具Navicat Premium 16 for Mac
    NavicatPremium16forMac是一款功能强大且易于使用的多连接数据库管理工具。软件下载地址一、主要功能无缝数据迁移:数据传输、数据同步和结构同步功能可助力轻松、快速地迁移数据,降低开销。提供跨各种数据库管理系统(DBMS)传输数据的详细分步指导。可比较和同步数据库,在......
  • C++17: 用折叠表达式实现一个IsAllTrue函数
    前言让我们实现一个IsAllTrue函数,支持变长参数,可传入多个表达式,必须全部计算为true,该函数才返回true。本文记录了逐步实现与优化该函数的思维链,用到了以下现代C++新特性知识,适合对C++进阶知识有一定了解的人。这样一种从实际问题来学习和运用知识的过程还是挺有趣的,特此整理分......
  • Adobe Premiere Pro PR 2024 下载安装及常用快捷键 (专业视频编辑软件)
    目录一、软件概述1.1软件简介1.2主要特点1.3适用人群二、安装步骤2.1下载软件2.2安装准备2.3安装过程三、常用快捷键3.1剪辑操作3.2播放控制3.3项目管理一、软件概述1.1软件简介AdobePremierePro(简称PR)是Adobe公司开发的一款专业视频编辑软件,广泛......
  • CSE3SMT Software Measurement and Testing
    Software MeasurementandTestingCSE3SMTASSESSMENT 1- QUALITY RISK ASSESSMENTTeaching Period     Semester 2, 2024IntroductionImagineacompanyis implementinga brand-newsoftware system, and theywant to ensure they deliver the ......
  • 判断两个map的key 是否完全一致,key完全一致的情况下 判断key对应的值是否一致,一致返回
    你可以通过以下代码来判断两个Map的键是否完全一致,并且键对应的值是否一致:importjava.util.Map;publicclassMapComparer{publicstatic<K,V>booleanareMapsEqual(Map<K,V>map1,Map<K,V>map2){if(map1.size()!=map2.size()){retur......
  • 首发 最新AWVS/Acunetix Premium V24.8高级版漏洞扫描器(最新版)Windows/Linux下载
    前言AcunetixPremium是一种Web应用程序安全解决方案,用于管理多个网站、Web应用程序和API的安全。集成功能允许您自动化DevOps和问题管理基础架构。AcunetixPremium:全面的Web应用程序安全解决方案Web应用程序对于企业和组织与客户、合作伙伴和员工的联系至关重要。......
  • dremio 25.1 发布
    就在今天dremio发布了25.1版本(社区版)同时提供了docker镜像以及下载地址说明目前官方还缺少releasenote说明,目前来说github代码尽管提交了,但是不是新的(只更新了mavenpackageversion),从简单测试上,的确有一些bug修复,但是目前官方博客的一些新特性介绍,暂时测试没体现出来,可能......
  • UOS系统通过Remmina远程windows系统桌面
    windows系统之间可以互相进行远程桌面连接,那么UOS系统是否可以远程到windows系统桌面呢?请见下面的文章。下载安装Remmina软件首先我们需要在UOS系统上面找到应用商店,下载并安装一个Remmina软件windows系统开启允许远程桌面连接windows系统上搜索栏输入允许远程连接,点击如......
  • C++: std::once_flag 和 std::call_once
    std::once_flag和std::call_oncestd::once_flag和std::call_once是C++11引入的同步原语,用于确保某个函数在多线程环境中只被执行一次。它们位于头文件中,主要用于实现线程安全的初始化操作。std::once_flag概述类型:std::once_flag是一个结构体,用于记录某个函数......