我目前在一个网站上需要完全响应屏幕宽度和像素密度。我的主要问题是如何获得HiDPI设备的响应能力,例如galaxy s4。
我已经阅读了关于min-device-pixel-ratio的信息,但是我没有完全理解它并且我的尝试不起作用。我所有的less / css都使用rems作为单位,所以基本上我应该能够操纵html标签上的字体大小,得到我想要的东西,对吧?但也许这就是废话?
但是,我想要求最佳做法,提示和技巧。 对我来说重要的是,我没有桌面和移动设备的多个版本或子域。我想用媒体查询来做这一切。
非常感谢您提前。我真的很感谢你的帮助!
干杯
答案 0 :(得分:0)
Hidpi仅表示1 css像素以3x3实际像素渲染(这对于设备而言是不同的,iPhone像素密度为2,因此在iPhone 1上css像素由4个实际LCD像素组成。)。 galaxy s4上的网站仍然呈现为360x640像素,像素密度为3,因此您不需要为HiDPI设备提供任何额外的CSS。
您只需在年度主题部分添加此元标记
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
并将css应用于常规非HiDPI设备。
答案 1 :(得分:0)
除了pankijs写的内容之外,请注意,不同的浏览器(chrome,android native browser,firefox等)以不同的方式处理媒体查询。例如,如果您使用:
@media only screen and (max-width : 480px)
它适用于桌面Chrome浏览器和Android智能手机浏览器,但不适用于iPhone上的Safari。要使它在Safari上运行,您必须使用:
@media only screen and (max-device-width : 480px)
结论是您需要在物理设备上测试媒体查询:)有关详细信息,请查看此页:http://www.w3.org/TR/css3-mediaqueries/