对于html5移动端网页编写CSS网上有很多介绍的文章,但在实际使用过程中还是会纠结.

网上的资料太多,且大多都是技术介绍型,特别是针对android上,网上写的各种麻烦,各种复杂,各种不接地气儿...

我在做移动端网页时,总是和美工设计的页面有出入,主要还是由于双方对移动端HTML5实现页面还了解还不够。

今天就研究一下各大互联网公司对于移动端页面的处理方式。

  • 主要研究对象:BAT(度娘,阿狸,企鹅)这几家的移动端网站或webapp
  • 主要研究点:viewport的设置,字体的设置,图片原始宽高设置

汝甚吊,令尊知否?


咦?target-densitydpi呢?

网上有老复杂的计算,针对不同的屏幕分辨率,通过公式计算出不同结果再用JS输出到viewport上,各种云云, 我只想说:汝甚吊,令尊知否

google现在也已经不建议使用target-densitydpi这一属性,webkit中已移除了,请看这里

http://trac.webkit.org/changeset/119527

现代移动端网站的最佳实践


我看了BAT的移动端页面中,现在是没有target-densitydpi这个东西了。

最佳实践:

1、在viewport中将width设置为device-width, 如:

<meta name="viewport" content="width=device-width">

2、并且将网页设计成自适应方式

先有再优才是王道


CSS中关于分辨率宽度设置:

宽度可以使用320px为标准,图片宽度可以以640px为标准。

这样一方面兼容了低分辨率的低端机,一方面兼容了高分辨率的高端机,缺点是可能会浪费些流量,但开发效率上来讲那是极好的,要保证。

字体单位设置


几个网站中大概使用了以下几个单位

Fontsize单位:px, em, %, rem

只有淘宝首页使用了rem这个单位,果然是淘宝的UED比较喜欢尝试新的东西,这个单位是CSS3中新加入的,结合了em与px的优点,摒弃了em与px的(不易操控)缺点

关于字体单位详细介绍可以参考这片文章

http://www.w3cplus.com/css3/define-font-size-with-css3-rem

Viewport中的initial-scale值


除淘宝首页的initial-scale设置了0.5,iphone4下相当于640宽度分辨率。

其它的initial-scale均是1.0的设置,即iphone4下320宽度的分辨率,包括淘宝内页或则其内部的天猫,微淘等频道或产品。

各移动端网站截图说明


以下是各移动端网站页面initial-scale值、字体、间距等

淘宝首页

0.5缩放,所以它的边距设置的是24px但实际视觉上看到的像素是12px

淘宝聚划算频道

天猫

蘑菇街

腾讯QQ官方

QQ空间

百度首页

百度音乐

结束语


我只是简单的对BAT巨头们的移动端网站,在chrome浏览器debug模拟器的查看了它们相应的HTML及CSS

对于移动端页面布局方面我应该也算是新手,新手上路... 大家多躲躲我,免得追尾了。

我水平有限,此文仅供参考,欢迎讨论

========================================================

转载处请注明:博客园(王二狗)willian12345@126.com

html5移动端页面分辨率设置及相应字体大小设置的靠谱使用方式的更多相关文章

  1. 彻底弄懂设置根元素字体大小calc(100vw/18.75) 实现rem自适应

    rem 是相对文档根元素(html)字体大小的尺寸单位,当元素的尺寸或文字字号等使用 rem 单位时,会随着根元素的 font-size 变化而变化,那么在不同分辨率的设备下动态设置根元素的字体大小就 ...

  2. eclipse护眼颜色和字体大小设置

    ♣eclipse护眼颜色和关键字颜色设置 ♣eclipse字体大小设置(包括jsp , .xml ,.java) 1.Eclipse字体大小调整: 窗口(Window)-首选项(Preferences ...

  3. eclipse中的字体大小设置和背景色设置

    1.字体大小设置 在basic下选择最后一个TextFont 护眼背景色设置 添加到自定义颜色后点确定 最后一步点apply

  4. pycharm设置开发模板/字体大小/背景颜色(3)

    一.pycharm设置字体大小/风格 选择 File –> setting –> Editor –> Font ,可以看到如上界面,可以根据自己的喜好随意调整字体大小,字体风格,文字 ...

  5. hadoop java VM 参数设置 默认native栈大小设置

    问题总结: 程序栈太小,64位机器的栈大小默认比32位的大,将程序从64放到32中执行则报错,需要修改初始堆栈大小 (.so库中提供两个函数接口,一个里面使用的是尺寸较大的图像,另一个处理的图像很小, ...

  6. Matplotlib字体大小设置

    参考:https://blog.csdn.net/henkekao/article/details/72871882 ax = plt.subplot(111) # 设置刻度字体大小 plt.xtic ...

  7. 【转】IntelliJ IDEA 仿照vs2017快捷键设置,以及字体颜色设置

    因后期工作需要使用java技术栈,所以近期抽空下载了intelliJ IDEA工具,但是作为一个Net开发者,在使用了vs以后,感觉在使用别的开发工具感觉就是没法和vs相比,毕竟vs被称为宇宙最强id ...

  8. 动态设置html根字体大小(随着设备屏幕的大小而变化,从而实现响应式)

    代码如下:如果设置了根字体大小,font-size必须是rem var html =document.querySelector('html'); html.style.fontSize = docu ...

  9. hotcss.js Flexible 移动端适配在dpr=2和dpr=3出现的字体大小设置不正确问题.

    这段时间一直在用hotcss做移动端适配,做了几个页面没有发现什么问题,后来老大要加快进度,我把项目分出一块给另一个同事做,她发现了一个问题就是字体在dpr=2,dpr=3,的设备上字体大小显示老是不 ...

随机推荐

  1. CSS等高布局的7种方式

    前面的话 等高布局是指子元素在父元素中高度相等的布局方式.等高布局的实现包括伪等高和真等高,伪等高只是看上去等高而已,真等高是实实在在的等高.本文将介绍边框模拟.负margin这两种伪等高以及tabl ...

  2. CF527D

    题面 这题还挺水的,把那个式子稍微变形一下就可以的到xi-wi>=xj+wj,易知:若把每个点看做一条线段,左端点是xi-wi,右端点是xi+wi,就只要求最多的不重叠的线段数就可以了,然后就是 ...

  3. 13函数式编程&Stream流

    13.1常用的函数式接口总结   接口名称 方法名称 抽象/默认  延迟/终结 方法描述 Supplier get 抽象 终结 供给型接口,无参有返回值,主要用于 Consumer accept 抽象 ...

  4. MT【27】对数方程组求范围

    解答:3 评论:此类题目通性通法为换元后化归为线性规划问题.当然不等式凑配也是常见技巧,只是容易范围扩大或者缩小.

  5. luogu4185 [USACO18JAN]MooTube (并查集)

    类似于NOI2018d1t1的离线做法,把询问存下来,排个序,然后倒着给并查集加边,每次询问并查集联通块大小 #include<bits/stdc++.h> #define ll long ...

  6. docker的网络模式

    记性不好,回顾一下.按照惯例,直接看官文. Docker's networking subsystem is pluggable, using drivers. Several drivers exi ...

  7. Spring Cloud(五) --- zuul

    微服务网关 在微服务架构中,后端服务往往不直接开放给调用端,而是通过一个API网关根据请求的url,路由到相应的服务.当添加API网关后,在第三方调用端和服务提供方之间就创建了一面墙,这面墙直接与调用 ...

  8. 获取泛型的class 反射

    最近在使用Google的Gson包进行Json和Java对象之间的转化,对于包含泛型的类的序列化和反序列化Gson也提供了很好的支持,感觉有点意思,就花时间研究了一下. 由于Java泛型的实现机制,使 ...

  9. A1097. Deduplication on a Linked List

    Given a singly linked list L with integer keys, you are supposed to remove the nodes with duplicated ...

  10. Django-Ajax及跨域请求

    Ajax准备知识:json 什么是json? 定义: JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式.它基于 ECMAScript (w ...