如何在 Bootstrap 4 中隐藏和替换 navbar-toggler-icon?
How to hide and replace navbar-toggler-icon in Bootstrap 4?
如何隐藏和替换 Bootstrap 4 中的 navbar-toggler-icon?现在下面的代码只是将 'X' 放在汉堡菜单下面。
<nav class="navbar navbar-toggleable-md">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse"
data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarsExampleDefault">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse"
data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false"
aria-label="Toggle navigation">
<span>X</span>
</button>
</nav>
您的代码现在有 2 个切换器,但我不确定为什么。您只需要用 X..
替换正常的 navbar-toggler-icon
<nav class="navbar navbar-faded navbar-toggleable-md">
<button class="navbar-toggler navbar-toggler-right py-2" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation">
<span>X</span>
</button>
<a href="" class="navbar-brand">Brand</a>
<div class="collapse navbar-collapse" id="navbarsExampleDefault">
<ul class="navbar-nav">
<li><a href="">Link</a></li>
</ul>
</div>
</nav>
编辑 要在汉堡包切换器图标和关闭的 X 之间切换,您需要在 navbar-toggler
中同时拥有 X 和汉堡包图标。添加一些 CSS 来处理导航栏的 collapsed
状态。
.navbar-toggler>.close {
display:inline;
}
.navbar-toggler.collapsed>.close, .navbar-toggler:not(.collapsed)>.navbar-toggler-icon {
display:none;
}
http://www.codeply.com/go/fgHv33Q6UM
更新Bootstrap4.2
原来的 question/answer 是 Bootstrap 4 alpha。一旦 Bootstrap 4 处于测试阶段,navbar-toggleable-*
类 更改为 navbar-expand-*
这会影响导航栏断点。这是 Bootstrap 4.2...
的更新示例
如果一开始出现关闭按钮,试试这个
HTML
<nav class="navbar navbar-light bg-faded navbar-toggleable-md">
<button class="navbar-toggler navbar-toggler-right collapsed" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation">
<span class="my-1 mx-2 close">X</span>
<span class="navbar-toggler-icon"></span>
</button>
<a href="" class="navbar-brand">Brand</a>
<div class="collapse navbar-collapse" id="navbarsExampleDefault">
<ul class="navbar-nav">
<li class="nav-item"><a href="" class="nav-link">Link</a></li>
<li class="nav-item"><a href="" class="nav-link">Link</a></li>
<li class="nav-item"><a href="" class="nav-link">Link</a></li>
</ul>
</div>
</nav>
CSS
.navbar{
button[aria-expanded="true"] > span.close {
display: inline;
color: #fff;
opacity: 1;
}
button[aria-expanded="true"] > span.navbar-toggler-icon {
display: none;
}
button[aria-expanded="false"] > span.close {
display: none;
}
}
如何隐藏和替换 Bootstrap 4 中的 navbar-toggler-icon?现在下面的代码只是将 'X' 放在汉堡菜单下面。
<nav class="navbar navbar-toggleable-md">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse"
data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false"
aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarsExampleDefault">
<button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse"
data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false"
aria-label="Toggle navigation">
<span>X</span>
</button>
</nav>
您的代码现在有 2 个切换器,但我不确定为什么。您只需要用 X..
替换正常的navbar-toggler-icon
<nav class="navbar navbar-faded navbar-toggleable-md">
<button class="navbar-toggler navbar-toggler-right py-2" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation">
<span>X</span>
</button>
<a href="" class="navbar-brand">Brand</a>
<div class="collapse navbar-collapse" id="navbarsExampleDefault">
<ul class="navbar-nav">
<li><a href="">Link</a></li>
</ul>
</div>
</nav>
编辑 要在汉堡包切换器图标和关闭的 X 之间切换,您需要在 navbar-toggler
中同时拥有 X 和汉堡包图标。添加一些 CSS 来处理导航栏的 collapsed
状态。
.navbar-toggler>.close {
display:inline;
}
.navbar-toggler.collapsed>.close, .navbar-toggler:not(.collapsed)>.navbar-toggler-icon {
display:none;
}
http://www.codeply.com/go/fgHv33Q6UM
更新Bootstrap4.2
原来的 question/answer 是 Bootstrap 4 alpha。一旦 Bootstrap 4 处于测试阶段,navbar-toggleable-*
类 更改为 navbar-expand-*
这会影响导航栏断点。这是 Bootstrap 4.2...
如果一开始出现关闭按钮,试试这个
HTML
<nav class="navbar navbar-light bg-faded navbar-toggleable-md">
<button class="navbar-toggler navbar-toggler-right collapsed" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation">
<span class="my-1 mx-2 close">X</span>
<span class="navbar-toggler-icon"></span>
</button>
<a href="" class="navbar-brand">Brand</a>
<div class="collapse navbar-collapse" id="navbarsExampleDefault">
<ul class="navbar-nav">
<li class="nav-item"><a href="" class="nav-link">Link</a></li>
<li class="nav-item"><a href="" class="nav-link">Link</a></li>
<li class="nav-item"><a href="" class="nav-link">Link</a></li>
</ul>
</div>
</nav>
CSS
.navbar{
button[aria-expanded="true"] > span.close {
display: inline;
color: #fff;
opacity: 1;
}
button[aria-expanded="true"] > span.navbar-toggler-icon {
display: none;
}
button[aria-expanded="false"] > span.close {
display: none;
}
}