如何用另一个默认图标替换Bootstrap下拉切换图标?

Kat*_*tie 6 html css html5 css3 bootstrap-4

是否有一个纯CSS方法来替换Bootstrap dropdown-toggle类中的插入符号图标?我希望它看起来像向下箭头或逻辑或符号(∨),如下所示:

带箭头的下拉菜单

而不是原来的向下实心三角形插入符号.我找到了替换原始图标大小的答案:

.dropdown-toggle::after {
    display: inline-block; /* Default */
    width: 0; /* Default */
    height: 0; /* Default */
    margin-left: .3em; /* Default */
    vertical-align: middle; /* Default */
    content: ""; /* Default */
    border-top: .3em solid; /* caret size */
    border-right: .3em solid transparent; /* caret size */
    border-left: .3em solid transparent; /* caret size */
}
Run Code Online (Sandbox Code Playgroud)

但我无法想出一个让它成为箭头的好方法.此处引用的另一个问题要求您手动将图像嵌入HTML中.

And*_*L64 5

如this other SO thread中所述,您可以只删除当前图标并使用<span><i>标记添加您自己的自定义/Font Awesome图标,如下所示:

.dropdown-toggle::after {
        display: none !important;
 }
Run Code Online (Sandbox Code Playgroud)
<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.0/umd/popper.min.js"></script><script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script><link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet"/><link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"/>

<div class="dropdown">
  <button type="button" class="btn btn-secondary dropdown-toggle"  data-toggle="dropdown" style="background-color: #7c2a8b;">
    Customer
    <i class="fa fa-angle-down"></i>
  </button>
  <div class="dropdown-menu">
    <a class="dropdown-item" href="#">A</a>
    <a class="dropdown-item" href="#">B</a>
    <a class="dropdown-item" href="#">C</a>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

或者您可以跳过 css 部分,只需删除dropdown-toggle类名并将图标添加到您的 html 中,如下所示:

<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.0/umd/popper.min.js"></script><script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script><link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet"/><link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"/>

<div class="dropdown">
  <button type="button" class="btn btn-secondary" data-toggle="dropdown" style="background-color: #7c2a8b;">
    Customer
    <i class="fa fa-angle-down"></i>
  </button>
  <div class="dropdown-menu">
    <a class="dropdown-item" href="#">A</a>
    <a class="dropdown-item" href="#">B</a>
    <a class="dropdown-item" href="#">C</a>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)


Kos*_*ery 5

您可以将默认值更改为以下内容:

.dropdown-toggle {
  font: 400 1.5rem/1.25 sans-serif;
  color: white;
  background: purple;
  padding: .5em 1em;
}

.dropdown-toggle::after {
  display: inline-block;
  width: .3em;
  height: .3em;
  margin: -.3em 0 0 .4em;
  vertical-align: middle;
  content: "";
  border: .3em solid;
  border-width: 0 .15em .15em 0;
  transform: rotateZ(45deg)
}
Run Code Online (Sandbox Code Playgroud)
<span class="dropdown-toggle">CUSTOMERS</span>
Run Code Online (Sandbox Code Playgroud)