在活动状态下样式化反应引导程序组件

时间:2017-03-16 21:36:01

标签: reactjs sass react-bootstrap

我正在尝试设计一个React Bootstrap Navbar。我能够成功设置非活动标签的样式,但是,我似乎无法访问活动标签。 我的样式是一个单独的.scss文件。这是相关的片段:

event.shiftKey

创建活动的Bootstrap组件时,其HTML如下所示:

.navitem {
  a {
    font-size: 12px;
    color: #000;
    background-color: #e7e7e7;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-bottom-color: #357ebd;
    border-bottom-style: solid;
    border-radius: 0px !important;
    display: inline-block;
    border-bottom-width: 2px;
  }
  flex: 1;
}

.navitem.active {
  background-color: #777777;
}

这是反应render()方法中的HTML:

<li role="presentation" class="Preview-navitem--19fA7 active"><a role="button" href="#">Preview</a></li>

所以,基本上,我可以设置.navitem的样式,但不能设置.active。 知道我怎么能做到这一点吗?

1 个答案:

答案 0 :(得分:2)

假设这是基于粘贴代码的CSS模块,解决方案是使用全局选择器。 CSS模块在Exceptions下的主要README页面上简要提到了这一点。但是,他们的webpack demoglobal selector example你可以克隆并玩弄。

简而言之,你应该改变:

.navitem.active {
  background-color: #777777;
}

为:

.navitem:global(.active) {
  background-color: #777777;
}

以便Webpack正确处理它。这应该是所有需要的!