媒体查询+rem+less 自适应

1、根据媒体查询设置html的font-size的大小,less代码如下:

//假设手机设置为10等分,html的字体大小等于屏幕大小除以10 
@no:10;
@media screen and (min-width: 320px) {
	html{
		font-size: 320px / @no;     //32px
	}
}
//375 iphone678
@media screen and (min-width: 375px) {
	html{
		font-size: 375px / @no;     //37.5px
	}
}
@media screen and (min-width: 750px) { 
    html{ 
        font-size: 750px / @no;       //75px
    } 
}

2、那么rem是怎么换算的呢?我们可以简单的举个例子:

  比如一张设计稿的宽度是750px(一般),你测量了一个150像素的宽度,这个时候你要怎么设置宽度呢?

  实际上就是 '测量的像素' / 'html的字体大小',也就是150 / 75 = 2, css中就可以直接设置width:2rem;
  或者width:100rem
/ 50;(推荐,省去计算时间)   同样的,如果设计稿上的宽度为375px,你测量一个75像素的宽度,同样按照公式: 75 / 37.5 = 2,css中宽度直接设置为width:2rem;
  如何还是觉得换算麻烦,可以使用vscode里面自带的的插件(ccsrem),输入px的时候会自动转换为rem,转换的比例可以在vscode配置修改。   后续需要在媒体查询中补全其他手机的屏幕宽度大小,然后根据公式计算得到对应的font
-size大小,那么就可以根据rem达到自适应的效果

 

 

posted @ 2021-05-06 03:49  凌晨的粥  阅读(711)  评论(1编辑  收藏  举报