42

我正在尝试使用以下 css 代码更改 twitter bootstrap 模态标题的背景颜色。

.modal-header
 {
     padding:9px 15px;
     border-bottom:1px solid #eee;
     background-color: #0480be;
 }
 .modal-header .close{margin-top:2px}
 .modal-header h3{margin:0;line-height:30px}

但是这段代码使模态标题的角有角度。在使用上述代码之前,角是圆形的。如何获得具有上述背景颜色的模态标题的圆形角?谢谢

4

9 回答 9

75

您可以使用下面的 css,将其放在您的自定义 css 中以覆盖引导 css。

.modal-header {
    padding:9px 15px;
    border-bottom:1px solid #eee;
    background-color: #0480be;
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
     border-top-left-radius: 5px;
     border-top-right-radius: 5px;
 }
于 2013-10-09T03:30:45.247 回答
21

所以,我尝试了这些其他方法,但有一个非常轻微的刺激性,那就是如果你保持模态内容边框半径,在 FF 和 Chrome 中,即使你使用,也会沿着边框显示一点白色修剪模态标题边框半径上的 5px。(标准 modal-content 边框半径为 6px,因此 modal-header 边框顶部半径上的 5px 覆盖了一些白色)。

我的解决方案:

.modal-body
{
    background-color: #FFFFFF;
}

.modal-content
{
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    background-color: transparent;
}

.modal-footer
{
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    -webkit-border-bottom-left-radius: 6px;
    -webkit-border-bottom-right-radius: 6px;
    -moz-border-radius-bottomleft: 6px;
    -moz-border-radius-bottomright: 6px;
}

.modal-header
{
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    -webkit-border-top-left-radius: 6px;
    -webkit-border-top-right-radius: 6px;
    -moz-border-radius-topleft: 6px;
    -moz-border-radius-topright: 6px;
}

!!警告 !!

然后,您必须设置 modal-header、modal-content 和 modal-footer 的背景颜色。这是一个不错的权衡,因为它允许您这样做:

<div class="modal-header bg-primary">

<div class="modal-body bgColorWhite">

<div class="modal-footer bg-info">

编辑

甚至更好:

<div class="modal-header alert-primary">
于 2014-09-03T19:29:00.397 回答
15

角落实际上在.modal-content

所以你可以试试这个:

.modal-content {
  background-color: #0480be;
}
.modal-body {
  background-color: #fff;
}

如果更改页眉或页脚的颜色,圆角将被覆盖。

于 2013-10-09T02:48:10.853 回答
12

我需要的是:

.modal-header{
     background-color:#0f0;
}
.modal-content {
    overflow:hidden;
}

overflow: hidden保持里面的颜色border-radius

于 2016-07-29T19:33:49.667 回答
7

将此类添加到您的 css 文件以覆盖引导类.modal-header

.modal-header {
   background:#0480be;
}

重要的是永远不要编辑 Bootstrap CSS,以便能够从 repo 更新并且不会丢失在未来版本中所做的更改或破坏某些内容。

于 2013-10-09T02:45:30.277 回答
6

我自己想知道如何更改模态标题的颜色。

在我对问题的解决方案中,我试图遵循我对 Bootstrap 愿景的解释方式。我添加了标记类来说明模态对话框的作用。

modal-success, modal-info, modal-warning 和 modal-error告诉他们做什么,如果你改变引导程序中的一些模态类,你不会因为突然有一种在任何情况下都不能使用的颜色而陷入困境. 当然,如果您制作自己的主题,则应该更改它们。

.modal-success {
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#dff0d8), to(#c8e5bc));
  background-image: -webkit-linear-gradient(#dff0d8 0%, #c8e5bc 100%);
  background-image: -moz-linear-gradient(#dff0d8 0%, #c8e5bc 100%);
  background-image: -o-linear-gradient(#dff0d8 0%, #c8e5bc 100%);
  background-image: linear-gradient(#dff0d8 0%, #c8e5bc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8',     endColorstr='#ffc8e5bc', GradientType=0);
  border-color: #b2dba1;
  border-radius: 6px 6px 0 0;
}

在我的解决方案中,我实际上只是从alert-success引导程序中复制了样式并添加了边框半径以保持圆角。

我对这个问题的解决方案的简单演示

于 2014-05-16T20:40:35.980 回答
4

聚会有点晚了,但这是另一个解决方案。

只需将模态的类调整为类似的东西alert-danger就可以了,但是它会删除模态的顶部圆角。

一种解决方法是为元素提供modal-header一个额外的类panel-heading,例如

<div class="modal fade" tabindex="-1" role="dialog">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
      <div class="modal-header panel-heading"> <!-- change here -->
        <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
        <h4 class="modal-title">Modal title</h4>
      </div>
      <div class="modal-body">
        <p>One fine body&hellip;</p>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Save changes</button>
      </div>
    </div>
  </div>
</div>

然后,要更改标题颜色,您可以执行以下操作(假设您使用的是 jQUery)

jQuery('.modal-content').addClass('panel-danger')
于 2017-07-07T16:52:51.073 回答
4

您可以通过简单地将类添加到 modal-header 来解决这个问题

<div class="modal-header bg-primary text-white">
于 2020-08-27T03:28:16.357 回答
0

所有其他答案overflow:hidden、<code>alert-danger 在 Bootstrap 4 中对我不起作用,但我在 Bootstrap 4 中找到了一个简单的解决方案。由于白色修剪来自 modal-content,只需为其添加border-0类,白色修剪就会消失。

示例: https ://codepen.io/eric1214/pen/BajLwzE?editors=1010

于 2020-06-16T02:17:49.190 回答