之前一个项目要求,在设备屏幕宽大于1200px时,除了大的banner图按照100%比例设置的可以进行等比放缩,文字图片等大小不变(当时设计稿宽是1920px);
当时的做法是首先设置了rem和px的比例:
html{font-size:625%}//16px*625%=100px;其余的除了最外层宽用100%设置的外其他的全部用rem
然后判断当屏幕宽为1250时,按照屏幕大小等比放缩;因为1200px时logo图靠近了最左侧,所以为了给logo图左侧保留点距离,我就按照1250px时进行的等比放缩;
$(function(){ var $width=$(window).width(); if($width<1250){ getRem(1300,100) } }); function getRem(pwidth,prem){ var html = document.getElementsByTagName("html")[0]; var oWidth = document.body.clientWidth || document.documentElement.clientWidth; html.style.fontSize = oWidth/pwidth*prem + "px"; }
只是兼容性不好,只兼容到ie9及以上;在低版本下只能再用px写一遍;比如:.content{font-size:16px\9;font-size:0.16rem}