一段时间以来,由于PC和智能手机的屏幕分辨率之间的差异变得非常接近。所以我认为区分两个使用
@media max-width
不够精确。
我错了吗?或者还有其他方法可以做得更好吗?
编辑:
问完问题后,我有了一个主意,我认为使用 centimeters(cm)
单位而不是pixels
是区分小屏幕和大屏幕的最简单方法。但是不幸的是,公制似乎没有得到很好的支持,它在我的PC上可以完美运行,但是我的手机认为他的宽度超过10厘米甚至20厘米长。
我目前正在使用@media orientation
来区分PC和Tablet&Mobile。我主要关心的是移动设备,因为它的纵向宽度很小,浪费了页边距的空间,所以这对我来说已经足够了。
答案 0 :(得分:2)
请记住,您可以在一个查询中使用多个测试,以及在媒体查询中使用AND / NOT / OR功能
@media only screen and (-webkit-min-device-pixel-ratio: 2) and (max-device-width: 480px) {}
我发现针对pixel-ratio > 1
和/或resolution (dpi)
进行的测试与设备宽度相结合对捕获很多移动设备很有用。
答案 1 :(得分:1)
似乎没有最佳实践,建议使用多种技巧来检测用户是否正在使用移动浏览器。
这里有一个类似的问题,带有建议的技巧
Detect if a browser in a mobile device (iOS/Android phone/tablet) is used