rem 与px的转换

使用rem代替px,可以使网页随着屏幕大小变化而变化

步骤:1,引用JS文件,如图2所示,调用

1,引用JS文件(以下是remConfig.js)

 

export default function(){
  var deviceWidth = document.documentElement.clientWidth || window.innerWidth
  var whdef = 100/1366;// 表示宽为1366px的设计图,使用100PX的默认值 
  var wH =document.documentElement.clientHeight || window.innerHeight;// 当前窗口的高度
  var wW = document.documentElement.clientWidth || window.innerWidth;// 当前窗口的宽度
  if(wW>=1920){
    wW = 1920;
  }
  if(wW <= 1366){
    wW = 1366;
  }
  var rem = wW * whdef;// 以默认比例值乘以当前窗口宽度,得到该宽度下的相应FONT-SIZE值
  document.documentElement.style.fontSize = rem + 'px'
}

注:此例是以1366px宽屏幕的设计稿为参照,大于1366px后网页上只要使用REM为单位的元素,都会等比例缩放;

2,调用(在VUE为框架的项目中)

在main.js中写入  

import remconfig from './api/remConfig'//rem转换的js文件

remconfig();//'rem'转换
window.addEventListener('resize',function(){
  remconfig();
  //console.log('rem:'+document.documentElement.style.fontSize);
});



使用实例:.index{
  //border:1px solid rosybrown;
  font-size:0.12rem;
  padding:0.1rem 0.15rem;
  height:calc(100vh-0.6rem);
 }
在响应式设计中,我们通常使用媒体查询来根据不同的设备尺寸和分辨率来调整网站的布局和样式。同时,我们也可以使用媒体查询来转换rem与px单位。 首先,我们需要在根元素(html)中设置基准字体大小。例如,我们可以将基准字体大小设置为16px: ```css html { font-size: 16px; } ``` 接下来,我们可以使用媒体查询来根据不同的设备尺寸和分辨率来调整基准字体大小。例如: ```css @media screen and (max-width: 768px) { html { font-size: 14px; } } @media screen and (min-width: 768px) and (max-width: 1024px) { html { font-size: 15px; } } @media screen and (min-width: 1024px) { html { font-size: 16px; } } ``` 在这个例子中,我们使用三个媒体查询来分别设置不同设备尺寸下的基准字体大小。当屏幕宽度小于等于768px时,基准字体大小为14px;当屏幕宽度大于768px且小于等于1024px时,基准字体大小为15px;当屏幕宽度大于1024px时,基准字体大小为16px。 接下来,我们可以使用rem单位来设置其他元素的字体大小、宽度、高度等属性。例如,我们可以将一个元素的字体大小设置为1.5rem: ```css .element { font-size: 1.5rem; } ``` 这里的1.5rem实际上是相对于根元素(html)的基准字体大小而言的。如果根元素的基准字体大小为16px,那么1.5rem就相当于24px。 如果我们需要将px转换成rem,我们可以使用以下公式: ``` rem = px / 基准字体大小 ``` 例如,我们想将一个元素的宽度从100px转换成rem,假设根元素的基准字体大小为16px,则可以这样计算: ``` rem = 100px / 16px = 6.25rem ``` 因此,我们可以这样设置元素的宽度: ```css .element { width: 6.25rem; } ``` 这样,在不同设备尺寸下,由于根元素的基准字体大小不同,元素的宽度也会自动适应。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值