我有困难理解移动分辨率是如何工作的。据我所知,标准网站移动分辨率为320像素宽。问题似乎出现在iPhone 4上,它似乎拥有640像素宽的屏幕分辨率,但却以320像素显示网页。
这里的解决方案是什么?我是否需要为320像素和640像素屏幕编写两种不同的分辨率?如何强制iPhone 4显示640像素的网页?
我有困难理解移动分辨率是如何工作的。据我所知,标准网站移动分辨率为320像素宽。问题似乎出现在iPhone 4上,它似乎拥有640像素宽的屏幕分辨率,但却以320像素显示网页。
这里的解决方案是什么?我是否需要为320像素和640像素屏幕编写两种不同的分辨率?如何强制iPhone 4显示640像素的网页?
我发现最小宽度为320px的网站在大多数高端移动设备上(如iPhone,Android和Nokia N97)看起来很好。以下是一些最流行设备的屏幕分辨率:
"iPhone 320 x 480"
"iPhone 4 320 x 480(放大了2倍)"
"HTC Legend 320 x 480"
由于 iPhone 4 的像素数量是 iPhone 3 的两倍,这意味着为 iPhone 3 优化的每个网站都会在显示屏上变得非常小。 因此,引入了 devicePixelRatio,以保持网站的大小(以毫米或英寸为单位)同时将物理像素翻倍,从而有效地使双倍分辨率(视网膜)图像和字体更加清晰,但仍保留旧的 CSS 字体和像素大小。
iPhone 4 和 5 上的设备像素比为 2:1。 这意味着在 CSS 中定义为 100 x 100 像素的图片实际上占用了 200 x 200 物理像素。因此,您仍然可以使用 320 像素的 CSS 样式来设计页面;320 dips - 设备独立像素。
请注意,设备像素比也存在于 Android 上,在那里它的范围从 1.5 到 3 不等。
更多信息:http://www.quirksmode.org/blog/archives/2012/06/devicepixelrati.html和http://www.quirksmode.org/blog/archives/2012/07/more_about_devi.html。<link rel="stylesheet" media="all and (orientation:portrait)" href="/Content/portrait.css">
<link rel="stylesheet" media="all and (orientation:landscape)" href="/Content/landscape.css">
这样CSS将会分别为横屏和竖屏加载。
@media (min-width: 500px) and (max-width: 640px){}
@media (min-width: 320px) and (max-width: 400px){}
这就是分辨率将如何处理的方式。
最常见的移动屏幕尺寸包括320x240、480x320、800x480、960x480、1024x800和1024x768。
你可以使用这行代码:
<link type="text/css" href="css/mobile.css" rel="stylesheet" media="only screen and (max-width: 480px)" />