移动端布局

移动端布局

标签(空格分隔): 未分类


预备知识

  • Device Pixels 设备屏幕的物理像素,硬件指标,这个就是指铺多少点,和编程关系不大。
  • dpr==dppx (Number of device pixels per CSS Pixel) 设备像素比表示1个CSS像素(宽度)等于几个物理像素(宽度)。 window.devicePixelRatio可以得到这个值
  • CSS Pixels web编程中的概念。所以,1个CSS像素在不同设备上可能对应不同的物理像素数,这个比值是设备的属性(Device Pixel Ratio,dpr)
    在CSS规范中,长度单位可以分为绝对单位和相对单位。px是一个相对单位,相对的是设备像素(Device Pixels)。比如iPhone5使用的是Retina视网膜屏幕,用2x2的Device Pixel代表1x1的CSS Pixel,所以设备像素数为640x1136px,而CSS逻辑像素数为320x568px
  • viewport 在没有缩放的情况下,屏幕的CSS像素宽度其实是指理想视口的宽度,而meta标签:
    <meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/>
    指定了布局视口=理想视口,并且禁止缩放。所以添上width=device-width的viewport meta后页面变大了(一开始页面内容小得看不清),实际上是布局视口变小了

现在知道为啥子移动端会出现1px问题了吧

关于设计稿

因为存在不同比例的尺寸的手机,设计师不可能对每个尺寸手机进行设计稿还原,一般来说,以ip6尺寸为宜。下面举例的时候以ip6为准。

ip6数据

尺寸

css Pixels :375667 这个就是你写代码的时候的尺寸
device Pixels: 750
1444 设计稿尺寸(注意/2)
dpr:2 表示1个css像素宽度等于2个


设计稿 ==> 静态页面

由上面例子我们可以看出,设计稿尺寸和css尺寸是有个2倍关系的,所以写css的时候无脑/2

  • 问题:我们拿到设计稿如何还原尺寸?

文字流式,控件弹性,图片等比缩放。

布局示例图

解释: 控件弹性指的是,navigation、cell、bar等适配过程中垂直方向上高度不变;水平方向宽度变化时,通过调整元素间距或元素右对齐的方式实现自适应。这样屏幕越大,在垂直方向上可以显示更多内容,发挥大屏幕的优势。


常规及技巧

  1. 一个典型的移动端布局meta头
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    逐个属性解释

    • width=device-width让屏幕看宽度等于设备宽度,简单点理解就是让手机浏览器的宽度适应手机屏幕
    • initial-scale=1 默认缩放比例
    • maximum-scale、minimum-scale及user-scalable属性控制允许用户以怎样的方式放大或缩小页面
  2. rem布局

    • 设置font-size.两种方式
      1. js设置
    document.addEventListener('DOMContentLoaded', function(e) {
                document.getElementsByTagName('html')[0].style.fontSize = window.innerWidth / 10 + 'px';
    
     2. css设置
    

@media (min-device-width : 375px) and (max-device-width : 667px) and (-webkit-min-device-pixel-ratio : 2){
html{font-size: 37.5px;}
}
```
+ 转化尺寸
根据比例图转化尺寸,这一步没啥说的,你可以摆个计算器算,也可以用scss或者less写个函数自己转化。

参考资料

rem和设计稿
移动端适配多种设计稿
手淘适配方案
flexiable使用
1px问题

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,560评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,104评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,297评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,869评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,275评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,563评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,833评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,543评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,245评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,512评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,011评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,359评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,006评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,062评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,825评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,590评论 2 273
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,501评论 2 268

推荐阅读更多精彩内容

  • 一、meta标签的效果 移动端页面一般会在head头部添加如下meta标签。 该meta标签是否添加对页面渲染的影...
    nimw阅读 3,457评论 0 5
  • 2018/01/22更新 之前的rem方式在页面加载的时候会有个重置css的过程,导致了初始化的时候会出现页面从小...
    WS林海峰阅读 10,637评论 8 28
  • 我在地球的这一端 你在地球的另一端 我看着蓝蓝的天 我看着咸蛋黄似的太阳 突然之间便想念着你 你从天上偷偷的关注着...
    Ling_00阅读 216评论 2 6
  • 刀光剑影乱世 生与死同样锋利 逆命而来骤雨 此生蜉蝣 抑或蝼蚁 萤火明灭 萍踪浪迹 我南征北战的马蹄 踏碎了烟火阑...
    怕生厌喜阅读 378评论 0 3
  • 2012年10月8日 周一 小雨 窗外下着蒙蒙细雨。山里的树叶大部分已经掉落,有些树木开始露出了光秃秃的枝...
    绣面芙蓉阅读 107评论 0 0