一、类名
Tip:class要写成calssName,各组件之间命名不能一样
//1.在src下新建一个.css文件,可以写样式
//2.在.js文件中导入.css文件,
import './App.css'
//3.App.js,class样式命名要写成className
<div className="App">
hello world
</div>
// App.css
.App{
color:red;
}
//每个.js文件对应一个.css样式文件,类名不要重复。
二、解决命名重复
2-1 styled-components
//1.安装依赖
yarn add styled-components
//2.新建一个样式组件components-style/Wrapper.js,导入依赖
import styled from 'styled-components';
const Title = styled.h1` //样式
font-size:1.5em;
text-align:center;
color:red;
`
export default Title;
//3.在主组件中导入Title这个样式组件并使用
import Title from './components-style/Wrapper'
class App extends React.Component{
render(){
return(
<div>
<Title>react</Title>
</div>
)
}
}
2-2 嵌套
//Wrapper.js
import styled from 'styled-components';
const Title = styled.h1`
font-size:1.5em;
text-align:center;
color:red;
.one{
color:pink;
}
h4{
color:deeppink;
}
&:hover{
color:yellow
}
`
//&表示的就是h1,就是最外层的元素,不用&也可以达到相同效果
export default Title;
//App.js
class App extends React.Component{
render(){
return(
<div>
<Title>react
<p class="one">hello world</p>
<h4>我喜欢react</h4>
</Title>
</div>
)
}
}
三、内联样式
Tip:内联使用双括号
constructor(props) {
super(props)
this.state = {
color:"blue"
}
}
<p style={{width:300,marginRight:"10px",color:this.state.color}}>hello world</p>