移动端页面适配,rem布局

移动端页面适配

em 根据元素自身的字体大小来计算自己的尺寸

rem root em 根据根节点(html)的字体大小来计算自己的尺寸

适配: 各个移动设备,分辨率大小不一致,使我们的页面在各种分辨率下都显示完好(等比的缩放);

根据屏幕的分辨率

动态的设置html的字体大小,来达到页面等比缩放的功能

注意:保证html最终算出来的字体大小 不能小于 12

在最开始先设置一段js代码,获得屏幕宽度,这段js优先于任何css和js

<script>

(function() {

var html = document.querySelector("html");

var width = html.getBoundingClientRect().width;

html.style.fontSize = width / 16 + "px";

//  width / 16  html的字体大小 = 屏幕宽度的16分之一 = 1rem

//  270 /

//console.log(html.getBoundingClientRect());

})();

</script>

html.getBoundingClientRect().width; //获得屏幕宽度

像素比

alert(window.devicePixelRatio); //像素比 像素比为2 用两个像素的大小去显示 1px的内容

// 最好设计图的宽度都保持在 750以上

时间: 2024-10-23 12:41:36

移动端页面适配,rem布局的相关文章

移动端页面使用rem布局

阿里团队的高清布局方案代码 所谓高清方案就是根据设备屏幕的DPR(设备像素比,又称DPPX,比如dpr=2时,表示1个CSS像素由4个物理像素点组成) 动态设置 html 的font-size, 同时根据设备DPR调整页面的缩放值,进而达到高清效果**. var _baseFontSize = baseFontSize || 100; var _fontscale = fontscale || 1; var win = window; var doc = win.document; var ua

移动端页面适配---rem

(function(doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize', recalc = function() { var clientWidth = docEl.clientWidth; if (!clientWidth) return; if (clientWidth >= 750) { docEl.st

PC端、移动端页面适配方案

前言 页面自适应PC端.移动端大体上可以分为两种: 1.在同一个页面进行自适应布局,通常使用CSS3 @media 媒体查询器实现 2.两套页面,在后端进行统一适配,根据不同的浏览器UA返回对应的页面 本文记录在java后端进行PC端.移动端页面适配的方案 工程结构 想要实现后端统一适配,首先要规范好工程结构 后端代码,跟之前差不多,响应的viewName路径,直接从业务模块开始,适配工作交给aop:两套页面,对应的业务模块,分别放在两个目录下面 aop适配器 统一的适配工作交由aop环绕切面进

移动端页面使用rem来做适配

rem介绍 rem(font size of the root element)是指相对于根元素(即html元素)的字体大小的单位.假设根元素的字体大小是10px, 则5rem的大小为 5*10=50px,例如 1 html{ 2 font-size: 10px; 3 } 4 width: 2rem; /* 2*10 = 20px;*/ 5 margin: 1rem; 6 } 7 img{ 8 width:.6rem; 9 } rem来做适配 以前我们往往这样做页面:viewport width

移动端页面适配

前端开发中,尤其移动端手机屏幕大小各异,该如何解决页面适配的问题呢?下面从几点进行了总结. 1.设计稿的布局设计 我们在进行H5页面内容规划布局设计的时候,不能把重要的内容放在太偏下的位置或者偏上,否则前端布局时可能出现内容显示不全的情况. 除去将浏览器全屏显示的情况,几乎所有的情况都会有顶部的状态栏和导航栏. iphone的设计标准,状态栏和导航栏的独立像素高度分别为40px和88px. 由于安卓系统可以更改状态栏和导航栏的高度,这里可以取默认值为48px和100px. 那么就会把网页内容往下

浅谈前端移动端页面开发(布局篇)

前言的一些碎碎念:最近一直在写移动端的页面,不过一直是用的别人造好的轮子,很多时候并没有想那是为什么,那是怎么样要那么写,就跟着别人的文档去了.本以为自己对移动端的那一丢丢理解,结果很多东西都特么有问题,所以,今天停下了手中的一些东西,来谈下移动端的布局方案吧 内容有些长,这也是我第一次写博客,不足之处还请严厉指出 一. viewport 什么是viewport 简单来讲,viewport就是浏览器上,用来显示网页的那一部分区域了,也就是说,浏览器的实际宽度,是和我们手机的宽度不一样的,无论你的

细说移动端 经典的REM布局 与 新秀VW布局

和以往一样,本次项目也放到了 Github 中,欢迎围观 star ~ 1. 前言 2. 基本概念 3. REM布局 4. VW布局 实现单边边框1px 实现多边边框1px 实现边框圆角 实现容器固定纵横比 5. REM + VW布局 6. 对比选择 方案选择 食用方式 一.前言 说到前端页面的布局方案,可以从远古时代的Table布局说起,然后来到 DIV+CSS布局,之后有了Float布局,Flex布局,Column布局,Grid布局等等. 而另一方面,还有一些 布局概念: 1. 静态布局 直

聊聊PC端页面适配

目也pc端有适配的需求:目前我们pc项目的设计稿尺寸是宽度1920,高度最小是1080. 适配目标: 1.在不同分辨率的电脑上,网页可以正常显示 2.放大或者缩小屏幕,网页可以正常显示 对于宽度的适配 对于宽度适配: 首先设置html,body{width:100%;overflow-x:hidden;} 然后我们可以把页面分解为背景层(一般宽度都会大于1200px)和内容层(一般宽度都会小于1200px),对于背景层,我们一般都要求完全铺开,主要有以下几种情况: 1.背景色为纯色:我们可以直接

移动端页面适配问题

移动端页面满屏自适应方案(采用rem作为单位,设计稿为750 * 1334) 修改自阿里的lib-flexible,与lib-flexible相比,删除了dpr,保留rem 满屏自适应,要求设计稿为750 * 1334 单位换算为1rem = 50px 代码引入: <head> <script>function refreshRem(){var e=docEl.getBoundingClientRect().width,t=docEl.getBoundingClientRect()