首页 文章

在响应式布局中隐藏元素?

提问于
浏览
272

通过引导程序看起来它们似乎支持折叠较小屏幕的菜单栏项目 . 页面上的其他项目是否有类似内容?

例如,我有一个导航丸正好浮动 . 在小屏幕上,这会导致问题 . 我喜欢至少把它放到类似的点击显示更多下拉菜单中 .

这在现有的Bootstrap框架中是否可行?

8 回答

  • 11

    添加到Bootstrap的新可见类

    Extra small devices 电话(<768px) (Class names : .visible-xs-block, hidden-xs)

    Small devices 平板电脑(≥768px) (Class names : .visible-sm-block, hidden-sm)

    Medium devices 桌面(≥992px) (Class names : .visible-md-block, hidden-md)

    Large devices 桌面(≥1200px) (Class names : .visible-lg-block, hidden-lg)

    有关更多信息,请访问:http://getbootstrap.com/css/#responsive-utilities


    Below is deprecated as of v3.2.0


    超小型设备手机(<768px) (Class names : .visible-xs, hidden-xs)

    小型设备平板电脑(≥768px) (Class names : .visible-sm, hidden-sm)

    中型设备台式机(≥992px) (Class names : .visible-md, hidden-md)

    大型设备台式机(≥1200px) (Class names : .visible-lg, hidden-lg)


    Much older Bootstrap


    .hidden-phone, .hidden-tablet 等不受支持/过时 .

    UPDATE:

    在Bootstrap 4中有两种类型:

    • hidden-*-up 在视口位于给定断点处或更宽时隐藏元素 .

    • hidden-*-down 在视口位于给定断点处或更小时隐藏元素 .

    此外,为宽度超过1200像素的设备添加了新的 xl 视口 . For more information click here .

  • 21

    Bootstrap 4 Beta答案:

    d-block d-md-none隐藏在中型,大型和超大型设备上 . d-none d-md-block隐藏在小型和超小型设备上 .

    请注意,您也可以通过将 d-*-block 替换为 d-*-inline-block 来内联


    旧答案:Bootstrap 4 Alpha

    • 您可以使用类 .hidden-*-up 隐藏给定大小和更大的设备

    .hidden-md-up隐藏在中型,大型和超大型设备上 .

    • .hidden-*-down 相同,隐藏在给定大小和较小的设备上

    .hidden-md-down隐藏在中型,小型和超小型设备上

    • visible- *不再是bootstrap 4的选项

    • 要显示 only on medium devices ,您可以将两者结合起来:

    hidden-sm-down和hidden-xl-up

    有效尺寸为:

    • xs 适用于纵向模式的手机(<34em)

    • sm 适用于横向模式的手机(≥34em)
      平板电脑

    • md (≥48em)

    • lg 适用于桌面(≥62em)

    • xl 适用于桌面(≥75em)

    这是Bootstrap 4,alpha 5(2017年1月) . 更多细节:http://v4-alpha.getbootstrap.com/layout/responsive-utilities/

  • 2

    您可以为任何模块输入这些模块类后缀,以更好地控制它将显示或隐藏的位置 .

    .visible-phone  
    .visible-tablet     
    .visible-desktop    
    .hidden-phone   
    .hidden-tablet  
    .hidden-desktop
    

    http://twitter.github.com/bootstrap/scaffolding.html滚动到底部

  • 2

    我在此处添加了一些说明:

    1)显示的列表(可见电话,可见平板电脑等)在Bootstrap 3中已弃用 . 新值为:

    • visible-xs- *

    • visible-sm- *

    • visible-md- *

    • visible-lg- *

    • hidden-xs- *

    • hidden-sm- *

    • hidden-md- *

    • hidden-lg- *

    星号转换为以下各项(我只在下面显示了visible-xs- *):

    • visible-xs-block

    • visible-xs-inline

    • visible-xs-inline-block

    2)当您使用这些类时,不要在前面添加句点(在上面的答案的一部分中容易混淆) .

    例如:

    <div class="visible-md-block col-md-6 text-right text-muted">
       <h5>Copyright &copy; 2014 Jazimov</h5>
    </div>
    

    3)您可以使用visible- *和hidden- *(例如,visible-xs和hidden-xs),但这些已在Bootstrap 3.2.0中弃用 .

    有关更多详细信息和最新规格,请转到此处搜索"visible":http://getbootstrap.com/css/

  • 618

    从Bootstrap 4 beta开始删除 hidden-* 类 .

    如果你想在中等和最高级别上使用 d-* 类,例如:

    <div class="d-none d-md-block">This will show in medium and up</div>
    

    如果你想只在小和以下显示使用这个:

    <div class="d-block d-md-none"> This will show only in below medium form factors</div>
    

    Screen size and class chart

    | Screen Size        | Class                          |
    |--------------------|--------------------------------|
    | Hidden on all      | .d-none                        |
    | Hidden only on xs  | .d-none .d-sm-block            |
    | Hidden only on sm  | .d-sm-none .d-md-block         |
    | Hidden only on md  | .d-md-none .d-lg-block         |
    | Hidden only on lg  | .d-lg-none .d-xl-block         |
    | Hidden only on xl  | .d-xl-none                     |
    | Visible on all     | .d-block                       |
    | Visible only on xs | .d-block .d-sm-none            |
    | Visible only on sm | .d-none .d-sm-block .d-md-none |
    | Visible only on md | .d-none .d-md-block .d-lg-none |
    | Visible only on lg | .d-none .d-lg-block .d-xl-none |
    | Visible only on xl | .d-none .d-xl-block            |
    

    不是使用显式的.visible- *类,而是通过简单地将其隐藏在该屏幕大小来使元素可见 . 您可以将一个.d - * - none类与一个.d - * - block类组合在一起,仅在给定的屏幕大小间隔上显示一个元素(例如.d-none.d-md-block.d-xl-none仅在中型和大型设备上显示该元素 .

    Documentation

  • 94

    所有 hidden-*-uphidden-* 类都没有't work for me, so I'在 visible-* 之前添加自制的 hidden 类(适用于当前的引导程序版本) . 如果您只需要为一个屏幕显示div,并为所有其他屏幕隐藏,则非常有用 .

    CSS:

    .hidden {display:none;}
    

    HTML:

    <div class="col-xs-12 hidden visible-xs visible-sm">
       <img src="photo.png" style="width:100%">
    </div>
    
  • 0

    对于Bootstrap 4.0 beta(我认为这将保留最终版本)有一个变化 - 请注意隐藏的类已被删除 .

    看到文档:https://getbootstrap.com/docs/4.0/utilities/display/

    要在移动设备上隐藏内容并在较大的设备上显示,您必须使用以下类:

    d-none d-sm-block
    

    第一类设置在设备上显示全部,第二类显示设备“sm”up(如果要在不同设备上显示,可以使用md,lg等代替sm) .

    我建议在迁移之前阅读一下:

    https://getbootstrap.com/docs/4.0/migration/#responsive-utilities

  • 18

    在boostrap 4.1(运行代码段,因为我从Bootstrap文档中复制了整个表代码):

    .fixed_headers {
      width: 750px;
      table-layout: fixed;
      border-collapse: collapse;
    }
    .fixed_headers th {
      text-decoration: underline;
    }
    .fixed_headers th,
    .fixed_headers td {
      padding: 5px;
      text-align: left;
    }
    .fixed_headers td:nth-child(1),
    .fixed_headers th:nth-child(1) {
      min-width: 200px;
    }
    .fixed_headers td:nth-child(2),
    .fixed_headers th:nth-child(2) {
      min-width: 200px;
    }
    .fixed_headers td:nth-child(3),
    .fixed_headers th:nth-child(3) {
      width: 350px;
    }
    .fixed_headers thead {
      background-color: #333;
      color: #FDFDFD;
    }
    .fixed_headers thead tr {
      display: block;
      position: relative;
    }
    .fixed_headers tbody {
      display: block;
      overflow: auto;
      width: 100%;
      height: 300px;
    }
    .fixed_headers tbody tr:nth-child(even) {
      background-color: #DDD;
    }
    .old_ie_wrapper {
      height: 300px;
      width: 750px;
      overflow-x: hidden;
      overflow-y: auto;
    }
    .old_ie_wrapper tbody {
      height: auto;
    }
    
    <table class="fixed_headers">
      <thead>
        <tr>
          <th>Screen Size</th>
          <th>Class</th>
        </tr>
      </thead>
      <tbody>
        <tr>
          <td>Hidden on all</td>
          <td><code class="highlighter-rouge">.d-none</code></td>
        </tr>
        <tr>
          <td>Hidden only on xs</td>
          <td><code class="highlighter-rouge">.d-none .d-sm-block</code></td>
        </tr>
        <tr>
          <td>Hidden only on sm</td>
          <td><code class="highlighter-rouge">.d-sm-none .d-md-block</code></td>
        </tr>
        <tr>
          <td>Hidden only on md</td>
          <td><code class="highlighter-rouge">.d-md-none .d-lg-block</code></td>
        </tr>
        <tr>
          <td>Hidden only on lg</td>
          <td><code class="highlighter-rouge">.d-lg-none .d-xl-block</code></td>
        </tr>
        <tr>
          <td>Hidden only on xl</td>
          <td><code class="highlighter-rouge">.d-xl-none</code></td>
        </tr>
        <tr>
          <td>Visible on all</td>
          <td><code class="highlighter-rouge">.d-block</code></td>
        </tr>
        <tr>
          <td>Visible only on xs</td>
          <td><code class="highlighter-rouge">.d-block .d-sm-none</code></td>
        </tr>
        <tr>
          <td>Visible only on sm</td>
          <td><code class="highlighter-rouge">.d-none .d-sm-block .d-md-none</code></td>
        </tr>
        <tr>
          <td>Visible only on md</td>
          <td><code class="highlighter-rouge">.d-none .d-md-block .d-lg-none</code></td>
        </tr>
        <tr>
          <td>Visible only on lg</td>
          <td><code class="highlighter-rouge">.d-none .d-lg-block .d-xl-none</code></td>
        </tr>
        <tr>
          <td>Visible only on xl</td>
          <td><code class="highlighter-rouge">.d-none .d-xl-block</code></td>
        </tr>
      </tbody>
    </table>
    

    https://getbootstrap.com/docs/4.1/utilities/display/#hiding-elements

相关问题