最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

移动端自适应布局的高效方法,欢迎批评或指正_html/css_WEB-ITnose

来源:动视网 责编:小采 时间:2020-11-27 16:05:28
文档

移动端自适应布局的高效方法,欢迎批评或指正_html/css_WEB-ITnose

移动端自适应布局的高效方法,欢迎批评或指正_html/css_WEB-ITnose:是我个人偏好的一种方法,优点是可以省去大量的适配时间和精力, 一、总的办法是首先使用一点JS判断设备宽度,再给根元素html设置font-size,从而适配整个页面。 二、CSS中,无论是字号还是宽高,如果都使用em或rem单位(1px的可以无视),最终都是由根元素h
推荐度:
导读移动端自适应布局的高效方法,欢迎批评或指正_html/css_WEB-ITnose:是我个人偏好的一种方法,优点是可以省去大量的适配时间和精力, 一、总的办法是首先使用一点JS判断设备宽度,再给根元素html设置font-size,从而适配整个页面。 二、CSS中,无论是字号还是宽高,如果都使用em或rem单位(1px的可以无视),最终都是由根元素h


是我个人偏好的一种方法,优点是可以省去大量的适配时间和精力,

一、总的办法是首先使用一点JS判断设备宽度,再给根元素html设置font-size,从而适配整个页面。

二、CSS中,无论是字号还是宽高,如果都使用em或rem单位(1px的可以无视),最终都是由根元素html的font-size大小决定的。举个例子,比如设计图是0px宽,我一般会设置html的font-size为20px, 假设一个移动端的body宽度(或者可用宽度,这个视情况定)为clientWidth,那么要在这个终端还原设计图,就需要将适配后的html的font-size数值改为clientWidth/(0/(20*2))(移动端字号一般要除2),再渲染整个DOM。JS如下:

function adaptFun(designPercent){
var mainWidth = document.body.clientWidth;
var fontSize = mainWidth/designPercent + 'px';
document.documentElement.style.fontSize = fontSize;
//视窗变化时需要再次适配,这种情况实际价值不是很大!最主要的只是首次适配
window.onresize = function(){
var mainWidth = document.body.clientWidth;
var fontSize = mainWidth/designPercent + 'px';
document.documentElement.style.fontSize = fontSize;
}
}

adaptFun(0/40);

我把上边代码单独放一个文件(adapt.js)中;

三、在页面上如何放置和执行adapt.js

adapt.js最好尽量往上放,尽量紧跟在body后就好(如下),因为这时并没有加载多少东西,但已经可以判断document.body.clientWidth了,这样就可以改变原始的html的font-size值了。


这样,页面在绝大多数终端上将呈现原设计图效果,即使有Device-pixel-ratio1.5或3的设备,由于相对位置不会变,也只能写一句媒本查询即可(除非特别复杂的页面,否则媒本查询也不需要)。

四、优点和感概

如果靠媒体查询适配,会写不少代码,很头疼,以后有相似的项目想要借鉴,甚至还需重新适配,花去大量时间。

我个人觉得,这种只要写好一个设计宽度的版本(比如写一个0或320宽的)就好,其它自动适配,和写PC页面差别不大。

测试地址:http://game.feiliu.com/zk/ysg/main/index.html

文档

移动端自适应布局的高效方法,欢迎批评或指正_html/css_WEB-ITnose

移动端自适应布局的高效方法,欢迎批评或指正_html/css_WEB-ITnose:是我个人偏好的一种方法,优点是可以省去大量的适配时间和精力, 一、总的办法是首先使用一点JS判断设备宽度,再给根元素html设置font-size,从而适配整个页面。 二、CSS中,无论是字号还是宽高,如果都使用em或rem单位(1px的可以无视),最终都是由根元素h
推荐度:
标签: 方法 html css
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top