【问题标题】:Bootstrap custom open and close button hamburger menuBootstrap 自定义打开和关闭按钮汉堡菜单
【发布时间】:2021-07-26 15:47:20
【问题描述】:

我正在使用 Bootstrap 构建一个汉堡菜单。我想使用自己的打开和关闭按钮。我已经成功地做到了。但我遇到了一个问题:cthe hamburger icon 没有完全显示

代码如下:

<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-+0n0xVW2eSR5OomGNYDnhzAbDsOXxcvSN1TPprVMTNDbiYZCxYbOOl7+AMvyTG2x" crossorigin="anonymous">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.6.0/js/bootstrap.bundle.min.js"></script>

<nav class="navbar navbar-light bg-light">
    
    <button class="navbar-toggler collapsed" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation">
       <span class="close" style="margin-left:20px><img src="images/mobile-menu-close.png" width="33"></span>
       <span class="navbar-toggler-icon"></span>
    </button>
    <div class="collapse navbar-collapse" id="navbarsExampleDefault">
        <ul class="navbar-nav" style>
            <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:

<style type="text/css">

.navbar-toggler>.close {
    display:inline;

}
.navbar-toggler.collapsed>.close, .navbar-toggler:not(.collapsed)>.navbar-toggler-icon {
    display:none;
}
.navbar-light .navbar-toggler-icon{
    background-image: url(images/mobile-menu-open.png)!important;
    background-size: 33px 33px;
    background-repeat:no-repeat;
    margin-left: 20px;
}

.navbar-toggler {
    border: none;
    background-color: transparent;
}

.navbar-toggler:focus,
.navbar-toggler:active,
.navbar-toggler-icon:focus {
    outline: none;
    box-shadow: none;
}

.navbar{
    width: 200px;
    background-color: transparent!important;
}
.navbar-collapse{
    background-color: gray;
}

</style>

以下是我使用的图片: 有什么想法吗?

这是损坏的汉堡菜单的图片:

【问题讨论】:

    标签: html css twitter-bootstrap


    【解决方案1】:

    你这里少了一个":

    style="margin-left:20px">
    

    与其在 close span 中添加图像,不如使用 Javascript 更改类并将您的 css 添加到该类中,这样汉堡包在命中时更改为 x。

    查看:Bootstrap mobile menu icon change to x close

    【讨论】:

    • 用JS解决不了我的问题。我正在自定义汉堡图标本身
    • 是的,现在您有了一个图标,您的意图是在单击它时将其更改为 x,然后他们单击 x 以关闭菜单?对或错。您的代码和添加自定义图标的方式目前正在破坏菜单。
    • 抱歉坚持,但问题不在于单击时更改为 x,而在于自定义汉堡包图像如何不按应有的方式显示。我可以删除关闭按钮选项,我仍然会遇到同样的问题。我将编辑帖子以显示损坏的汉堡菜单的图像。
    • 好的,让我们回到基础。如果您的自定义图标看起来相同,那么使用默认图标的目的是什么?
    • icons.getbootstrap.com 你需要找到一种不同的方式来在 span class="close" 内添加图标而不是图像
    猜你喜欢
    • 2019-11-24
    • 1970-01-01
    • 2019-08-13
    • 1970-01-01
    • 1970-01-01
    • 2022-11-29
    • 2016-05-16
    • 2018-02-06
    • 1970-01-01
    相关资源
    最近更新 更多