某些CSS模块样式未得到应用

时间:2018-09-11 21:02:57

标签: javascript css reactjs css-modules

我很难用CSS模块应用我的CSS规则之一。

这是React代码和CSS样式。除适用于锚点的active类外,所有规则均适用。我尝试使用不同的名称,不同的选择器,但无法使其与锚元素一起使用(hoveractive伪类正常工作)。

import React from 'react';

import classes from './NavigationItem.css';

const navigationItem = (props) => {
  return (
    <li className={classes.NavigationItem}>
      <a 
        className={classes.active}
        href={props.link} >
        {props.children}</a>
    </li>
  );
};

export default navigationItem;
.NavigationItem {
    margin: 0;
    box-sizing: border-box;
    display: flex;
    height: 100%;
    align-items: center;
}

.NavigationItem a {
    color: white;
    text-decoration: none;
    height: 100%;
    padding: 16px 10px;
    border-bottom: 4px solid transparent;
    box-sizing: border-box;
    display: block;
}

.NavigationItem a:hover,
.NavigationItem a:active
.NavigationItem a.active {
    background-color: #8f5c2c;
    border-bottom: 4px solid #40a4c8;
    color: white;
}

如果我将内联样式对象与相同的CSS属性一起使用,则它可以正常工作。

const style = { 
  backgroundColor: '#8f5c2c',
  borderBottom: '4px solid #40a4c8',
  color: 'white'
};

Chrome devtools还显示锚点正在获取active类。

有人知道为什么吗?

1 个答案:

答案 0 :(得分:2)

此处缺少逗号:^(.*?)-(?<!front-)(glass|glass-.*?lcd|lcd)-.*?(replacement|repair)(.+)? 。应该是这样的:

.NavigationItem a:active