&:悬停时 Sass 不起作用

lad*_*nta 3 css sass twitter-bootstrap

我使用 SASS 和 bootstrap 来创建一个导航,但无法让悬停的伪类正常工作,有人能看到我做错了什么吗?

HTML:

    <div class="container">
    <nav class="navbar navbar-default" role="navigation">
        <!-- Brand and toggle get grouped for better mobile display -->
        <div class="navbar-header">
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>
        </div>
        <!-- Collect the nav links, forms, and other content for toggling -->
        <div class="collapse navbar-collapse navbar-ex1-collapse">
            <ul class="nav navbar-nav">
                <li><a href="#">Home</a></li>
                <li><a href="#">Our Clients</a></li>
                <li class="logo"></li>
                <li><a href="#">Our Products</a></li>
                <li><a href="#">Contact Us</a></li>
            </ul>
        </div>
    </nav>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS/SASS 在这里:

.navbar {
    background-color: transparent;
    border: none;
    padding-top: 3em;
    .navbar-nav {
        display: inline-block;
        float: none;
    }
    .navbar-collapse {
        text-align: center;
        a {
            width: 8em;
            font-family: 'Allan', cursive;
            font-size: 2em;
            &:hover {
                color: #f00;
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

有人告诉我需要添加更多细节,因为我的帖子主要是代码,所以我只是添加这句话。

lmg*_*ves 6

您的 SASS 代码正在运行,但 Bootstrap 定义了此规则:

.navbar-default .navbar-nav > li > a:hover{
    color: #333;
}
Run Code Online (Sandbox Code Playgroud)

所以你需要设置一个比它更具体的规则,例如在级联链中添加libefore :a

.navbar {
    background-color: transparent;
    border: none;
    padding-top: 3em;
    .navbar-nav {
        display: inline-block;
        float: none;
    }
    .navbar-collapse {
        text-align: center;
        li{
            a {
                width: 8em;
                font-family: 'Allan', cursive;
                font-size: 2em;
                &:hover {
                    color: #f00;
                }
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

演示版

或者使用!important,例如:

&:hover {
    color: #f00 !important;
}
Run Code Online (Sandbox Code Playgroud)

演示2

  • 最好使用级联来覆盖规则,而不是使用 `!important` (2认同)

Nik*_*iya 5

.classname {
    margin:50px;
    color:white;
    &:hover {
        color:red;
    }
}
Run Code Online (Sandbox Code Playgroud)