为什么自定义CSS类在React-Semantic-UI元素上不起作用?

时间:2018-09-15 14:39:32

标签: javascript css reactjs semantic-ui semantic-ui-react

我用react-semantic-ui创建了卡片,我想通过CSS类添加一些额外的样式。

一个例子是

我添加了具有box-shadow属性的自定义“卡片”类,但该样式未应用。

          HTML PART:

import './App.css';


          {/* CLAIM CARDS SECTION */}

                  <Card className='card'>
                    <Card.Content>
                      <Card.Header style={{display: 'flex', justifyContent: 'space-between', alignItems: 'center'}}>       
                        <h4>
                          Church Mutual Worker's Compensation Claim 
                          <span style={{marginLeft: '130px'}}>Claim #1234567</span>
                        </h4>
                      </Card.Header>
                    </Card.Content>
                  </Card>

CSS部分代码:App.css

 .header-height {
      height: 12rem;
    }

    .header-title-color {
      color: black;
      font-weight: bold;
    }

    .card {
      box-shadow: 2px 2px 2px 2px grey;
      width: 100%;
    }

    .red {
      color: red;
    }

有人解决方案如何将自定义CSS类添加到React-semantic-ui组件吗?

谢谢

2 个答案:

答案 0 :(得分:4)

由于class是JavaScript中的关键字,因此应在React中使用className而不是class

<Card className='card'>

答案 1 :(得分:2)

为您的className提供更具体的名称,例如Claim_Card。之后,在CSS中,您需要通过将className添加到该组件的现有语义的CSS中来覆盖sematic的默认CSS。在您的情况下,它将类似于

.ui.card.claim_Card {
  background: #455332; //for example
}

这将使您的CSS规则更具特异性,并且将覆盖默认的语义CSS。无论如何,请在浏览器检查器中检查要应用于样式的元素上使用了哪个CSS类,并使用该className(在本例中为.ui.card),并在其上添加className定义和规则。