【问题标题】:media query not working as expected媒体查询未按预期工作
【发布时间】:2012-10-05 04:26:42
【问题描述】:

为什么这段代码会让两个 div 都出现在横向 iPad 上?

/* CSS */

div{
    display:none;   
}
@media screen and (min-width: 48em) {
  /* IPAD PORTRAIT */
  body {
      /* DARK BLUE */
   background-color:#006;
  }
    div{
    display:none;  
  }
    #ipad-portrait{
    display:block;  
  }
}


@media screen and (min-width: 64em) {
  /* IPAD LANDSCAPE */
  body{
      /*bright green*/
    background-color:#3f0;  
  }


  /* an attempt to hide all divs before displaying 
     the one that says iPad landscape */
  div{
    display:none;  
  }



  #ipad-landscape{
    display:block; 
  }
}



<!-- HTML -->
 <div id="ipad-landscape">
 ipad landscape
 </div>

  <div id="ipad-portrait">
 ipad portrait
 </div>

谢谢!

【问题讨论】:

  • 嗯,我不知道您可以使用em 作为媒体查询的一种衡量形式。 em 是相对于字体大小的 - 真棒..
  • @potench 我把它从 this site 上取下来了。这真是太棒了-

标签: css media-queries


【解决方案1】:

您的最小宽度重叠。最小宽度为 64em 的设备也最小宽度为 48em。你可能想要的是这样的:

@media screen and (min-width: 48em) and (max-width: 63.999em) {
/* stuff */
}

【讨论】:

  • 但是为什么,当样式在向下移动工作表的级联中应用时,我的@media screen and (min-width: 64em) { div{ display:none;} ... 不起作用?谢谢!
  • 因为div 不够具体,无法覆盖第一个媒体查询中的#ipad-portrait。查看更多关于 css 特性的信息:coding.smashingmagazine.com/2007/07/27/…
猜你喜欢
  • 1970-01-01
  • 2015-12-25
  • 2017-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-20
相关资源
最近更新 更多