提问者:小点点

如何使bootstrap折叠具有响应性?


如何只在移动设备上显示折叠按钮和文本,在桌面上显示未折叠的内容?

我可以使用这个例子,只显示文本的一部分。通过点击其中一个按钮,将显示文本的其余部分。这对移动来说很好。

<p>
Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
</p>
<p>
    <a class="btn btn-primary" data-toggle="collapse" href="#collapseExample" role="button" aria-expanded="false" aria-controls="collapseExample">
        Link with href
    </a>
    <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#collapseExample" aria-expanded="false" aria-controls="collapseExample">
        Button with data-target
    </button>
</p>
<div class="collapse" id="collapseExample">
    <div class="card card-body">
        Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
    </div>
</div>

但我如何使它显示所有的文本在桌面和隐藏按钮?要隐藏按钮,我可以添加:

<p class="mobile-show-more">
    Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident.
</p>

并添加CSS类:

.mobile-show-more {
    display: none;
}

我正在考虑使用一个媒体查询,比如:

@仅媒体屏幕和(最大宽度:600px){

但我不确定这个类应该是什么样子的。当然,我可以使用'.mobile-show-more'类来处理桌面上的文本,但这样我就会有两个相同的文本。


共1个答案

匿名用户

如果您希望某些东西隐藏在小屏幕上,而显示在大屏幕上,或者相反,那么您可以使用bootstrap的显示属性。display属性确实会在引导程序的标准断点处中断,但您可以在SCSS中更改这些断点。

使用您使用的引导程序中的示例:

null

<link href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.0/dist/js/bootstrap.bundle.min.js"></script>


<p>
        <a class="btn btn-primary d-md-none" data-toggle="collapse" href="#collapseExample" role="button" aria-expanded="false" aria-controls="collapseExample">
            Link with href
        </a>
        <button class="btn btn-primary d-md-none" type="button" data-toggle="collapse" data-target="#collapseExample" aria-expanded="false" aria-controls="collapseExample">
            Button with data-target
        </button>
    </p>
    <div class="collapse d-md-block" id="collapseExample">
        <div class="card card-body">
            Some placeholder content for the collapse component. This panel is hidden by default but revealed when the user activates the relevant trigger.
        </div>
    </div>