javascript - 在动态生成的元素中覆盖 css

标签 javascript jquery css twitter-bootstrap

我正在使用 bootstrap-select,它在 select 之上添加了 div。换句话说,我定义:

<select id="@Html.IdForModel()" 
    name="@Html.NameForModel()" 
    class="selectpicker form-control" 
    data-live-search="true"></select>
...

 var selectBox = $('#@Html.IdForModel()');
 selectBox.selectpicker()

但是在带有开发者工具的页面中我看到:

<div class="btn-group bootstrap-select form-control">
  <button .../>
  <div class="dropdown-menu open" .../>
  <select .../>
</div>

现在我需要这个外部 div 为 "display:block",这解决了我遇到的一些布局问题。但是btn-groupbootstrap-select都适用"display:block-inline"

我试过:

  • 在单独的 css 文件中为 bootstrap-select 定义我自己的样式
  • !important 添加到我的定义中
  • selectBox.parent().addClass("select-parent-div");,我的 css 有:.select-parent-div{display: block !important}

唯一有用的是 selectBox.parent().css("display", "block"); 但我真的很想在 css 文件中使用我的样式。为什么 css 不适用,我该怎么办?

最佳答案

您需要检查应用 bootstrap 的样式是否被标记为 !important 在这种情况下 css 将不会考虑您的样式。

我以前遇到过这个问题,有效的技巧是在您的页面中使用相同名称的 bootstrap 创建相同的样式,并根据需要更改属性。

关于javascript - 在动态生成的元素中覆盖 css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40021102/

相关文章:

javascript - 动态滚动文本区域

javascript - 调用函数两次?

jquery - 使用 jQuery 性能创建 DOM 元素

jquery - 单击按钮时过滤 Primefaces 数据表

html - :hover, 焦点等所有状态的 css 通配符?

javascript - 如何将附加元素保留在父元素中?

css - 为什么透明 DIV 标签中的文本颜色会发生变化?

javascript - 服务器发送的事件不是(刷新?)正确地与 Flask 和 Redis 与 nginx 前端

javascript - 使用可能存在或可能不存在的接口(interface)修改全局

jquery - 在发出 AJAX 请求时使用 jQuery 显示加载栏