目前知道的 h5 页的自适应方法有两种,但都不是很完美。
一种是快被被淘汰的:
<meta name="viewport" content="width=750,target-densitydpi=device-dpi,user-scalable=no"/>这个的好处是所有元素都可以用 px 来规定宽高,因为页面会随着设备的尺寸自动缩放。 但是这种方法很坑,因为写出来的页面是固定比例的,在不同设备下页面比例之外的部分都是一片白色,非常难看。
第二种方法是现在最常用的:
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0,maximum-scale=1.0">页面宽度等于设备宽度,高度 100%就好了。
这种方法的缺点在于,因为页面宽高不确定,页面里元素只能用百分比来规定尺寸。有些情况百分比不是那么方便: 比如要让 div 中的字体垂直居中,但是 div 高度是用百分比写的没办法用 line-height。 又比如 iphone5 这种奇葩机型,按比例写出来的页面肯定会崩溃的。
是不是我孤陋寡闻,其实还有一种完美解决自适应问题的方法呢。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.