我正在使用Angular 2应用程序中的NgbDropdown
组件。它工作正常,但我想删除按钮右侧显示的箭头。
<div class="d-inline-block" ngbDropdown #myDrop="ngbDropdown">
<button class="btn btn-outline-primary" id="dropdownMenu1" ngbDropdownToggle>Toggle dropdown</button>
<div class="dropdown-menu" aria-labelledby="dropdownMenu1">
<button class="dropdown-item">Action - 1</button>
<button class="dropdown-item">Another Action</button>
<button class="dropdown-item">Something else is here</button>
</div>
</div>
答案 0 :(得分:23)
只需添加以下CSS样式即可覆盖.dropdown-toggle::after
伪元素的默认样式:
.dropdown-toggle::after {
display:none;
}
默认情况下,bootstrap会通过::after
pseudo-element将箭头添加到下拉组件。
执行此操作即可将其删除。
以下是 LIVE DEMO 演示。
使用chrome dev工具,您可以检查元素:
从上面我们可以看出,在.dropdown-toggle
类之后有一个伪元素::之后的样式集。让我们去改变元素的属性!为此,我们将display
属性更改为none
:
伪元素不再存在!!:
答案 1 :(得分:3)
答案 2 :(得分:0)
在Bootstrap 4中,您可以通过声明$enable-caret
SASS变量并将其设置为false
来删除称为插入符号的下拉箭头:
$enable-caret: false;
这将覆盖在Bootstrap的true
中设置的_variable.scss
的默认值:
// Options
//
// Quickly modify global styling by enabling or disabling optional features.
$enable-caret: true !default;
但是请记住,它会完全删除相应的CSS样式。因此,如果您不需要全局插入符号并希望减少CSS负载,那么这是最好的方法。