我有这个@media setup:

HTML:

<head>
  <meta name="viewport" content="width=device-width, user-scalable=no" />
</head>

CSS:

@media screen and (min-width: 769px) {
    /* STYLES HERE */
}

@media screen and (min-device-width: 481px) and (max-device-width: 768px) { 
    /* STYLES HERE */
}

@media only screen and (max-device-width: 480px) {
    /* STYLES HERE */
}

通过这种设置,它可以在iPhone上运行,但不能在浏览器上运行。

是因为我已经在元设备,也许有max-width:480px代替?


当前回答

潜在的问题是使用max-device-width vs使用普通的max-width。

使用“device”关键字的目标是屏幕的物理尺寸,而不是浏览器窗口的宽度。

例如:

@media only screen and (max-device-width: 480px) {
    /* STYLES HERE for DEVICES with physical max-screen width of 480px */
}

@media only screen and (max-width: 480px) {
    /* STYLES HERE for BROWSER WINDOWS with a max-width of 480px. 
       This will work on desktops when the window is narrowed.  */
}

其他回答

如果你想在浏览器中同时包含响应的最小和最大宽度,那么你可以使用以下方法:

 @media (min-width: 768px) and (max-width: 992px){...}
 @media (min-width: 480px) and (max-width: 767px) {...}

对于某些iPhone,你必须像这样放置你的视口

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, shrink-to-fit=no, user-scalable=0" />

如果网站在小设备上的行为像桌面屏幕,那么你必须把这个元标签放在头之前

<meta name="viewport" content="width=device-width, initial-scale=1">

对于媒体查询,您可以将其设置为

这将覆盖你所有的移动/手机宽度

 @media only screen and (min-width: 200px) and (max-width: 767px)  {
    //Put your CSS here for 200px to 767px width devices (cover all width between 200px to 767px //
   
    }

对于iPad和iPad pro,你必须使用

  @media only screen and (min-width: 768px) and (max-width: 1024px)  {
        //Put your CSS here for 768px to 1024px width devices(covers all width between 768px to 1024px //   
  }

如果你想为横向模式添加css,你可以添加这个

和(朝向:景观)

  @media only screen and (min-width: 200px) and (max-width: 767px) and (orientation : portrait) {
        //Put your CSS here for 200px to 767px width devices (cover all mobile portrait width //        
  }

content属性的正确值应该包括initial-scale:

<meta name="viewport" content="width=device-width, initial-scale=1"> ^^^^^^^^^^^^^^^

潜在的问题是使用max-device-width vs使用普通的max-width。

使用“device”关键字的目标是屏幕的物理尺寸,而不是浏览器窗口的宽度。

例如:

@media only screen and (max-device-width: 480px) {
    /* STYLES HERE for DEVICES with physical max-screen width of 480px */
}

@media only screen and (max-width: 480px) {
    /* STYLES HERE for BROWSER WINDOWS with a max-width of 480px. 
       This will work on desktops when the window is narrowed.  */
}