当前位置: 首页 > 知识库问答 >
问题:

在引导v4中缺少可见-**和隐藏-**

寇靖
2023-03-14

在BootstrapV3中,我经常使用hidden-**类与clearfix相结合来控制不同屏幕宽度的多列布局。例如

我可以在一个DIV中组合多个hidden-**以使我的多列以不同的屏幕宽度正确显示。

举个例子,如果我想显示一行产品照片,在大屏幕上每行4张,在小屏幕上3张,然后在非常小的屏幕上2张。产品照片可能是不同的高度,所以我需要清除,以确保行正确中断。

这是v3中的一个例子...

http://jsbin.com/tosebayode/edit?html,css,输出

现在v4已经删除了这些类,并用可见/隐藏-***-up/down类替换了它们,我似乎不得不对多个div做同样的事情。

下面是v4中的一个类似示例。。。

http://jsbin.com/sagowihowa/edit?html,css,输出

因此,我已经从单div变成了必须添加多个div和许多up/down类来实现相同的功能

从...

<div class="clearfix visible-xs-block visible-sm-block"></div>

<div class="clearfix hidden-sm-up"></div>
<div class="clearfix hidden-md-up hidden-xs-down"></div>
<div class="clearfix hidden-md-down"></div>

在v4中有没有我忽略的更好的方法?

共有3个答案

黄沈浪
2023-03-14

引导v4。1使用新的类名隐藏网格系统中的列。

对于根据屏幕宽度隐藏列,请使用d-none类或任何d-{sm、md、lg、xl}-none类。要在特定屏幕大小上显示列,请将上述类与d-blockd-{sm、md、lg、xl}-block类组合。

例如:

html prettyprint-override"><div class="d-lg-none">hide on screens wider than lg</div>
<div class="d-none d-lg-block">hide on screens smaller than lg</div>
龙凯
2023-03-14

不幸的是,所有类hidden-*-uphidden-*-down都已从引导中删除(自引导版本4 Beta起,在版本4 Alpha和版本3中,这些类仍然存在)。

相反,应使用新类d-*,如下所述:https://getbootstrap.com/docs/4.0/migration/#utilities

我发现新方法在某些情况下不太有用。旧方法是隐藏元素,而新方法是显示元素。使用CSS显示元素并不容易,因为您需要知道元素是否显示为块、内联、内联块、表等。

您可能希望使用此CSS恢复从Bootstrap 3中已知的以前的"hidden-*"样式:

/*\
 * Restore Bootstrap 3 "hidden" utility classes.
\*/

/* Breakpoint XS */
@media (max-width: 575px)
{
    .hidden-xs-down, .hidden-sm-down, .hidden-md-down, .hidden-lg-down, .hidden-xl-down, 
    .hidden-xs-up, 
    .hidden-unless-sm, .hidden-unless-md, .hidden-unless-lg, .hidden-unless-xl
    {
        display: none !important;
    }

}

/* Breakpoint SM */
@media (min-width: 576px) and (max-width: 767px)
{
    .hidden-sm-down, .hidden-md-down, .hidden-lg-down, .hidden-xl-down, 
    .hidden-xs-up, .hidden-sm-up, 
    .hidden-unless-xs, .hidden-unless-md, .hidden-unless-lg, .hidden-unless-xl
    {
        display: none !important;
    } 
}

/* Breakpoint MD */
@media (min-width: 768px) and (max-width: 991px)
{
    .hidden-md-down, .hidden-lg-down, .hidden-xl-down, 
    .hidden-xs-up, .hidden-sm-up, .hidden-md-up, 
    .hidden-unless-xs, .hidden-unless-sm, .hidden-unless-lg, .hidden-unless-xl
    {
        display: none !important;
    } 
}

/* Breakpoint LG */
@media (min-width: 992px) and (max-width: 1199px)
{
    .hidden-lg-down, .hidden-xl-down, 
    .hidden-xs-up, .hidden-sm-up, .hidden-md-up, .hidden-lg-up, 
    .hidden-unless-xs, .hidden-unless-sm, .hidden-unless-md, .hidden-unless-xl
    {
        display: none !important;
    } 
}

/* Breakpoint XL */
@media (min-width: 1200px)
{
    .hidden-xl-down, 
    .hidden-xs-up, .hidden-sm-up, .hidden-md-up, .hidden-lg-up, .hidden-xl-up, 
    .hidden-unless-xs, .hidden-unless-sm, .hidden-unless-md, .hidden-unless-lg
    {
        display: none !important;
    } 
}

在Bootstrap 3中没有包含隐藏-除非-*类,但它们也很有用,应该是不言自明的。

桂德义
2023-03-14

Bootstrap 5的更新(2020年)

引导程序5(当前为alpha)有一个新的xxl断点。因此,显示类有一个新的层来支持这一点:

仅在xxl上隐藏:d-xxl-none
仅在xxl上可见:d-none d-xxl-block

引导4(2018)

引导程序4中不再存在隐藏-*可见-*类。如果要在Bootstrap 4中隐藏特定层或断点上的元素,请相应地使用d-*显示类。

请记住,extra-small/mobile(以前称为xs)是默认(隐含)断点,除非被更大的断点覆盖。因此,引导4中不再存在-xs中缀。

显示/隐藏断点和断点:

  • hidden xs down(hidden xs)=d-none d-sm-block

显示/隐藏断点及以上位置:

  • 隐藏-xs-up=d-无(同隐藏
  • 隐藏-sm-up=d-sm-无
  • 隐藏-md-up=d-md-无
  • 隐藏-lg-up=d-lg-无
  • 隐藏-xl-up(n/a 3. x)=d-xl-无

仅显示/隐藏单个断点:

  • hidden xs(仅限)=d-none d-sm-block(与hidden xs down相同)
  • 隐藏sm(仅限)=d-block d-sm-none d-md-block
  • 隐藏md(仅限)=d-block d-md-none d-lg-block
  • hidden lg(仅限)=d-block d-lg-none d-xl-block
  • 隐藏xl(n/a 3.x)=d-block d-xl-none
  • visible xs(仅限)=d-block d-sm-none
  • 可见sm(仅限)=d-none d-sm-block d-md-none
  • visible md(仅限)=d-none d-md-block d-lg-none
  • 可见lg(仅限)=d-none d-lg-block d-xl-none
  • visible xl(n/a 3.x)=d-none d-xl-block

Bootstrap 4中响应显示类的演示

另外,请注意,可以将d-*-block替换为d-*-inlined-*-flexd-*-table-celld-*-table等。元素。阅读更多显示类

 类似资料:
  • 问题内容: 我在win10-64上重新安装了Python37-32,似乎满足了所有要求,并且我的hello world python文件正在执行 但是当我尝试使用pyinstaller时 它以错误结束 这是Windows上的基本安装,我不必手动重新编译任何引导加载程序(我习惯于使用较旧的python版本进行pyinstaller,并且从未遇到过问题)。我应该在哪里解决这个问题? 编辑 错误显示在p

  • Bootstrap3仍在RC中,但我只是尝试实现它。我不知道如何设置子菜单类。即使css中没有类,即使是新文档也没有提到它 它存在于2. x中,类名为下拉子菜单

  • 当导航栏崩溃时,我想让我的搜索栏可见。 我的代码:http://jsfiddle.net/edalzell/a3yng825/1/折叠时工作,但展开时显示两个搜索栏。 HTML:

  • 问题内容: 我有一个包含格式错误的JSON的字符串,该字符串在缺少键的情况下提供给我。JSON的结构超出了我的控制范围,因此我需要使用已有的东西。我已经找到了OP可以在JavaScript中解析格式错误的JSON的解决方案,但是其中一个值包含一个RegEx匹配的URL,并将其转换为另一个键(如值),导致JSON真正损坏。有任何想法吗? 我也看过jsonrepair,但是在那里没有太大的成功。 问题

  • 我有日期值,很少日期是完整的(格式:yyyy-mm-dd,但作为文本,而不是日期格式),但很少日期有缺失的月和日值,现在我必须添加缺失的月和日。示例:如果缺少日,则必须将该月的第一天添加到日期中,如果缺少月和日,则必须将1月1日添加到年部分中,在sql中,我可以简单地将数字连接起来,如下所示: 现在类似的连接必须在POSTGRESQL中完成,我尝试使用CAST和to_char以及其他一些函数,但我

  • 问题内容: 我想知道为什么以下内容不起作用-xs隐藏在xs视图中。我觉得这与Bootstrap v4中引入的更改有关,但是我想知道与在CSS中相比,在此代码中仍然可以实现这一点吗?我正在使用默认的bootstrap.css文件。 问题答案: 添加此答案是因为接受的答案中的注释太长且不完整。如前所述,这些类在Bootstrap 4 beta中不再存在。 “ hidden-sm-DOWN到底是什么?”