You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为带有collapse show类的Bootstrap手风琴卡片头部设置样式?

纯CSS解决展开面板(collapse show)的card header样式问题

你的CSS选择器存在两处错误,导致样式不生效:

  • 多余的空格:.card-header button .btn.btn-link中的空格表示选中button内部的.btn.btn-link元素,但按钮本身就带有btn btn-link类,正确写法应为.card-header button.btn.btn-link或直接.card-header .btn.btn-link
  • 选择器未正确关联展开状态的面板逻辑

以下是两种纯CSS解决方案,无需JavaScript:

方案1:利用Bootstrap自带的按钮状态类(推荐,兼容性好)

Bootstrap折叠面板展开时,触发按钮会自动移除.collapsed类;收起时则添加该类。直接针对未折叠的按钮设置样式即可:

.accordion .card .card-header .btn.btn-link:not(.collapsed) {
  background-color: #FEB7EE;
}

方案2:通过collapse show关联样式(需现代浏览器支持)

使用CSS的:has()选择器,匹配包含.collapse.show的卡片,再设置其card header的样式:

/* 给card header本身设置样式 */
.accordion .card:has(.collapse.show) .card-header {
  background-color: #FEB7EE;
}

/* 给card header里的按钮设置样式 */
.accordion .card:has(.collapse.show) .card-header .btn.btn-link {
  background-color: #FEB7EE;
}

注意::has()选择器目前支持Chrome、Firefox 121+、Edge等现代浏览器,若需兼容旧版浏览器,优先使用方案1。

内容的提问来源于stack exchange,提问作者Hagelslag

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 05:40:31