使用CSS在移动设备上隐藏div

时间:2013-06-04 16:05:15

标签: css html mobile hide

我想在移动设备上隐藏包含facebook likebox小部件的div。我尝试了这个,但它不起作用。

div代码:

<div id="facebook" class="fb-like-box mobile-hide" data-href="https://www.facebook.com/mypage" data-width="220" data-height="250" data-show-faces="true" data-stream="false" data-header="true"></div>

css代码:

@media screen and (min-width: 0px) and (max-width: 720px) {
  #facebook { display: none; }
  .mobile-hide{ display: none; }
}

我做错了什么? 它使用id或类引用不起作用。

10 个答案:

答案 0 :(得分:6)

确保您的网页定义了一个视口元标记。

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

有关此标记的详细信息,请参阅:Understanding The Viewport Meta Tag

答案 1 :(得分:5)

出于某种原因(我不知道)这有效:

<div  class="mobile-hide">
<div class="fb-like-box" data-href="https://www.facebook.com/mypage" data-width="220" data-height="250" data-show-faces="true" data-stream="false" data-header="true"></div>
</div>

答案 2 :(得分:4)

试试这些对我有用。

示例1:

@media only screen and (max-width: 479px) {
   .mobile-hide{ display: block !important; }
}

示例2:

@media only screen and (max-width: 479px) {
   .mobile-hide{ display: none !important; }
}

<强> description link

答案 3 :(得分:1)

我个人认为您的“显示”参数是错误的,请尝试使用可见性。我测试了它,它对我有用。

这个应该适合你:

@media only screen and (min-device-width: 0px) and (max-device-width: 720px) {div#facebook {visibility:hidden;}}

我认为你甚至可以忘记使用课程。

答案 4 :(得分:0)

试试这个。

 .mobile-hide{ visibility: hidden; }

编辑:对不起,意思是提高知名度。

答案 5 :(得分:0)

好的,我有一段时间没遇到这个问题了,出于某种奇怪的原因,只有当我把我的媒体查询规则放在css的末尾时它才有效。不知道为什么会这样,也许是某种类型的错误,但试一试,如果有效,请告诉我们。

答案 6 :(得分:0)

为什么不将邪恶的!important添加到您的display: none

答案 7 :(得分:0)

如果您正在处理流体网格布局,DW已经为您创建了3个媒体查询。要在手机上隐藏DIV,请仅申请:

#div{ display:none; } 诀窍是,您必须将此行添加到平板电脑

#div{ display:block; //or inline or anything, how you wish to display it }

它对我有用,希望它有用。

答案 8 :(得分:0)

只需删除&#34;和(min-device-width:0px)&#34;

答案 9 :(得分:0)

<style type="text/css">
  .mobileShow {
    display: none;
  }
  /* Smartphone Portrait and Landscape */
  
  @media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
    .mobileShow {
      display: inline;
    }
  }
</style>
<!--.mobileHide{ display: none;}-->

<style type="text/css">
  .mobileHide {
    display: inline;
  }
  /* Smartphone Portrait and Landscape */
  
  @media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
    .mobileHide {
      display: none;
    }
  }
</style>

<body>
  <div class="mobileHide">
    <p>TEXT OR IMAGE NOT FOR MOBILE HERE
      <p>
  </div>
  <p> yep its working</p>
  <div class="mobileHide">
    <p>THIS SHOULD NOT SHOW On Mobile (view in mobile mode)
      <p>
  </div>
</body>

来源: https://blog.hubspot.com/marketing/site-content-only-mobile-viewers-can-see-ht

此代码应该可以工作,您也可以执行移动重定向,或者可以使用JavaScript检测设备(Android或iPhone),尽管我建议我将两者结合起来并注意屏幕尺寸。

其他链接

https://coderwall.com/p/i817wa/one-line-function-to-detect-mobile-devices-with-javascript

What is the best way to detect a mobile device in jQuery?