为了账号安全,请及时绑定邮箱和手机立即绑定

如何覆盖Twitter Bootstrap中的样式

如何覆盖Twitter Bootstrap中的样式

芜湖不芜 2019-10-16 12:50:14
如何覆盖Twitter Bootstrap中的样式?例如,我当前正在使用具有CSS规则“ float:left;”的.sidebar类。我该如何更改它以便使其转至右侧?我正在使用HAML和SASS,但对于Web开发来说相对较新。
查看完整描述

2 回答

?
哈士奇WWW

TA贡献1799条经验 获得超6个赞

添加您自己的类,例如:<div class="sidebar right"></div>CSS:


.sidebar.right { 

    float:right


查看完整回答
反对 回复 2019-10-16
?
九州编程

TA贡献1785条经验 获得超4个赞

答案是CSS专用性。您需要在CSS中更“特定”,以便它可以覆盖bootstrap css属性。


例如,您在此处具有引导菜单的示例代码:


<nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">

    <div id="home-menu-container" class="collapse navbar-collapse">

        <ul id="home-menu" class="nav navbar-nav">

            <li><a class="navbar-brand" href="#"><img src="images/xd_logo.png" /></a></li>

            <li><a href="#intro">Home</a></li>

            <li><a href="#about">About Us</a></li>

            <li><a href="#services">What We Do</a></li>

            <li><a href="#process">Our Process</a><br /></li>

            <li><a href="#portfolio">Portfolio</a></li>

            <li><a href="#contact">Contact Us</a></li>

        </ul>

    </div><!-- /.navbar-collapse -->

</nav>

在这里,您需要记住特异性的层次结构。它是这样的:


给一个id为100的元素

给一个元素上提到10分的课程

给一个简单的元素一个单点

因此,对于上述情况,如果您的CSS具有以下内容:


.navbar ul li a { color: red; } /* 10(.navbar) + 1(ul) + 1(li) + 1(a) = 13 points */

.navbar a { color: green; } /* 10(.navbar) + 1(a) = 11 points */

因此,即使您已经定义了.navbar aafter .navbar ul li a,由于其特异性更高(13分),它仍然会被红色而不是绿色覆盖。


因此,基本上您所需要做的就是通过浏览器上的inspect元素来计算要更改css的元素的点数。在这里,bootstrap为元素指定了其css为


.navbar-inverse .navbar-nav>li>a { /* Total = 22 points */

    color: #999;

}

因此,即使您的css正在加载,也要在bootstrap.css之后加载,并包含以下行:


.navbar-nav li a {

    color: red;

}

它仍将呈现为#999。为了解决这个问题,引导程序有22分(您自己计算)。因此,我们所需要的不只是这些。因此,我将自定义ID添加到元素,即home-menu-container和home-menu。现在,以下CSS将起作用:


#home-menu-container #home-menu li a { color: red; } /* 100 + 100 + 1 + 1 = 202 points :) */

做完了


您可以参考此MDN链接。


查看完整回答
反对 回复 2019-10-16
  • 2 回答
  • 0 关注
  • 457 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信