css3 – 如何编写针对所有移动设备和平板电脑的CSS媒体查询?

前端之家收集整理的这篇文章主要介绍了css3 – 如何编写针对所有移动设备和平板电脑的CSS媒体查询?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@media only screen and (max-device-width : 640px) {
/* Styles */
}

@media only screen and (max-device-width: 768px) {
/* Styles */
}

这是我到目前为止。我正在开发的移动网站的PSD模型是640px宽。另一个,平板电脑版本的网站是768px。我只能使用最大宽度来测试我的网页浏览器中的网站,但是现在是时候让这个网站在设备上工作了,而且它仍然呈现出常规的全尺寸网页。上面的两个查询是我最好的猜测。我哪里错了?

解决方法

我建议使用以下媒体标签,而不是最初使用特定的宽度,或者解决方向或任何其他废话,
@media only screen and (min-resolution: 117dpi) and (max-resolution: 119dpi),only screen and (min-resolution: 131dpi) and (max-resolution: 133dpi),only screen and (min-resolution: 145dpi) and (max-resolution: 154dpi),only screen and (min-resolution: 162dpi) and (max-resolution: 164dpi),only screen and (min-resolution: 169dpi) {
  /* Your touch-specific css goes here */
}
@media only screen and (min-resolution: 165dpi) and (max-resolution: 168dpi),only screen and (min-resolution: 155dpi) and (max-resolution: 160dpi),only screen and (min-resolution: 134dpi) and (max-resolution: 144dpi),only screen and (min-resolution: 120dpi) and (max-resolution: 130dpi),only screen and (max-resolution: 116dpi) {
  /* Your click-specific css goes here */
}

你使用这些标签是什么?设置悬停&点击vs触摸事件。

触摸设备除了位于地址以上的灰色区域中的几个设备之外,具有与桌面设备完全不同的分辨率。不要 – 设置设计元素,但导航元素。有些学者可能会哭泣,最大宽度的精神错乱可能会更好一些,但是有很多高清电话是可笑的,设备的最大宽度很快就变得无用了。

但是,您应该使用宽度介质宽度查询。但是,不要打扰max-device-width,只要max-width&最小宽度。让上述标签解决您的触摸,而不是触摸用户,根据窗口大小让最小宽度与最大宽度的地址相匹配,并调整网站的视觉效果

此外,使用方向来确定它是否是可移动的,只是愚蠢的,因为即使是显示器也可以放置在各种方向(我已经看到的3监视器的常见设置是肖像中心监视器和横向侧面监视器)。

对于宽度视图,专注于使您的网站在各种宽度上清洁,忽略实际访问哪种设备,只需确保您的屏幕以不同的大小显示。这是很好的设计,适用于桌面和移动。如果他们将您的网站放在屏幕左上角的一个小窗口中,以供参考(或快速分心),同时使用其他地方的大部分屏幕房地产,而且应该是他们以及移动用户,您的较小的宽度被建成。尝试其他任何事情正在迅速地走向一个非常痛苦和自我消失的网路发展之路。所以对于那些较小的宽度,你可以设置你想要的宽度,但我会包括我个人喜欢的几个。

所以你应该有这样的东西…

@media only screen and (min-resolution: 117dpi) and (max-resolution: 119dpi),only screen and (min-resolution: 169dpi) {
    #touch_logo {
       display: inherit;
    }
    #mouse_logo {
       display: none;
    }
  /* Your touch-specific css goes here */
}
@media only screen and (min-resolution: 165dpi) and (max-resolution: 168dpi),only screen and (max-resolution: 116dpi) {
    #touch_logo {
       display: none;
    }
    #mouse_logo {
       display: inherit;
    }
  /* Your click-specific css goes here */
}
@media (min-width: 541px){
  /* Big view stuff goes here. */
}
@media (max-width: 540px) and (min-width: 400px){
  /* Smaller view stuff goes here. */
}
@media (max-width: 399px){
  /* Stuff for really small views goes here. */
}

虽然,不要忘记在您的页面的头部包括以下内容

<Meta name='viewport' content="width=device-width,initial-scale=1" />

在某些情况下,它仍然可能会崩溃,但这应该比许多其他解决方案更简洁和更完整。

猜你在找的CSS相关文章