【问题标题】:How to use collapse in correct way如何正确使用折叠
【发布时间】:2020-04-17 12:38:21
【问题描述】:

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>

<div class="accordion" id="accordionExample">
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" style="border-radius:0px;cursor:pointer;" id="headingOne">
        <i class="pe-7s-angle-up-circle" style="color:#3d68e0;font-size:16px;" data-toggle="collapse" data-target="#collapseOne"></i>
        <font data-toggle="collapse" data-target="#collapseOne">Header</font>
      </div>
    </div>
    <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
  <br>
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" style="border-radius:0px;cursor:pointer;" id="headingTwo">
        <i class="pe-7s-angle-up-circle" style="color:#3d68e0;font-size:16px;" data-toggle="collapse" data-target="#collapseTwo"></i>
        <font data-toggle="collapse" data-target="#collapseTwo">Detail</font>
      </div>
    </div>
    <div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
  <br>
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" style="border-radius:0px;cursor:pointer;" id="headingThree">
        <i class="pe-7s-angle-up-circle" data-toggle="collapse" data-target="#collapseThree"></i>
        <font data-toggle="collapse" data-target="#collapseThree">Vendor Price Detail</font>
      </div>
    </div>
    <div id="collapseThree" class="collapse" aria-labelledby="headingThree" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
  <br>
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" style="border-radius:0px;cursor:pointer;" id="headingFour">
        <i class="pe-7s-angle-up-circle" data-toggle="collapse" data-target="#collapseFour"></i>
        <font data-toggle="collapse" data-target="#collapseThree">Debtor Price Detail</font>
      </div>
    </div>
    <div id="collapseFour" class="collapse" aria-labelledby="headingThree" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
  <br />
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" style="border-radius:0px;cursor:pointer;" id="headingFive">
        <i class="pe-7s-angle-up-circle" data-toggle="collapse" data-target="#collapseFive"></i>
        <font data-toggle="collapse" data-target="#collapseThree">Tesco</font>
      </div>
    </div>
    <div id="collapseFive" class="collapse" aria-labelledby="headingFive" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
</div>

我从链接复制的代码:https://www.tutorialrepublic.com/codelab.php?topic=bootstrap&file=accordion

我只是把按钮改成字体

我的问题是:

代码应该是切换的,但我再单击 1 次以关闭卡体(不起作用)。只需按其他折叠然后关闭。

如何解决。

【问题讨论】:

  • 我修复了你的 sn-p(在 html 框中的 html),它按描述工作。您遇到的具体问题是什么?编辑:好的,前 3 个工作如前所述,其他两个是错误的。
  • 可以预见:data-target="#collapseThree" 在 4 和 5
  • @freedomn-n 我的问题是这样的...当我打开页面时->collapseOne 会显示,这个没问题...但是我再按一次collapseOne (Detail) 它应该是关闭的但我的结果是什么都没有发生......
  • @freedomn-n 只有我按下其他的collapse,collapseOne 会来。我希望collapseOne 可以自行关闭。
  • 它在您的 sn-p 中为我执行此操作 - 打开时“标题 1”展开,单击“标题 1”并折叠,再次单击,展开等。您需要单击文本,而不是 div,即使您已将光标指针放在 div 上

标签: javascript jquery html bootstrap-4


【解决方案1】:

您面临的问题是因为&lt;font&gt; 默认情况下内联显示 CSS 属性值,我建议不要使用它,因为它的 obsolete,以解决我用 &lt;div&gt; 替换 &lt;font&gt; 标签的问题

注意:我还修复了一些手风琴元素的折叠属性,并将内联 CSS 移至 CSS 类。

.card-header-title {
border-radius:0px;
cursor:pointer;
}
.pe-7s-angle-up-circle {
  color:#3d68e0;
  font-size:16px
}
font {
  display: block
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>

<div class="accordion" id="accordionExample">
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" id="headingOne">
        <i class="pe-7s-angle-up-circle" data-toggle="collapse" data-target="#collapseOne"></i>
        <div data-toggle="collapse" data-target="#collapseOne">Header</div>
      </div>
    </div>
    <div id="collapseOne" class="collapse show" aria-labelledby="headingOne" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
  <br>
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" id="headingTwo">
        <i class="pe-7s-angle-up-circle" data-toggle="collapse" data-target="#collapseTwo"></i>
        <div data-toggle="collapse" data-target="#collapseTwo">Detail</div>
      </div>
    </div>
    <div id="collapseTwo" class="collapse" aria-labelledby="headingTwo" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
  <br>
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" id="headingThree">
        <i class="pe-7s-angle-up-circle" data-toggle="collapse" data-target="#collapseThree"></i>
        <div data-toggle="collapse" data-target="#collapseThree">Vendor Price Detail</div>
      </div>
    </div>
    <div id="collapseThree" class="collapse" aria-labelledby="headingThree" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
  <br>
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" id="headingFour">
        <i class="pe-7s-angle-up-circle" data-toggle="collapse" data-target="#collapseFour"></i>
        <div data-toggle="collapse" data-target="#collapseFour">Debtor Price Detail</div>
      </div>
    </div>
    <div id="collapseFour" class="collapse" aria-labelledby="headingThree" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
  <br />
  <div class="card">
    <div class="card-header">
      <div class="card-header-title" id="headingFive">
        <i class="pe-7s-angle-up-circle" data-toggle="collapse" data-target="#collapseFive"></i>
        <div data-toggle="collapse" data-target="#collapseFive">Tesco</div>
      </div>
    </div>
    <div id="collapseFive" class="collapse" aria-labelledby="headingFive" data-parent="#accordionExample">
      <div class="card-body">
        &nbsp;123
      </div>
    </div>
  </div>
</div>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-25
    • 2014-08-22
    • 1970-01-01
    • 2015-11-25
    • 2015-10-30
    • 2014-02-28
    • 1970-01-01
    • 2022-01-03
    相关资源
    最近更新 更多