方案及原理:使用rem单位,通过window.onresize来监听浏览器窗口,获取窗口宽度,并改变跟字体大小来达到弹性适配效果. function adaptor(){ //为了便于计算,这里以1920px为基准 let width = document.body.clientWidth let fontSize = document.getElementsByTagName('html')[0].style.fontSize = width / 19.2 + "px"; } ada
rem布局计算(移动端,pc端有兼容性) <!DOCTYPE html> <html> <head lang="en"> <script> function rootREM() { var W = document.documentElement.clientWidth; W = (W <= 640) ? W : 640; document.documentElement.style.fontSize = W / 10 + 'px'
1.媒体查询:@media only screen and (max-width: ) {},在最初做pc端时,使用各种媒体查询,因为pc的屏幕分辨率总共就几种,不嫌麻烦的重复使用类名.有很大的缺陷就是UI给的设计稿宽度是一定的,在做响应式式凭借自己的感觉是一种超级不爽的美感纠结症. 2.百分比:百分比也是相当的麻烦,还要去各种计算,不是程序员该做的笨重事. 3.em:缺陷是父盒子的百分比. 自己探索了一条自己选择走的捷径,不用在担心宽度和高度不等比例适应,也不用担心在各分辨率下的布局会出现问题