【发布时间】:2019-12-15 16:30:04
【问题描述】:
我正在尝试了解 React 中边距的一些功能,并且仍然是 React 的新手。目前,我有一个包含一些 JSX/HTML 的 render 方法。我正在尝试使用 CSS 来更好地设置样式,但对代码有一些疑问。
- 在 CSS 中,我使用
Buttons和Margin: auto;将容器中的元素居中NavBar但它不起作用。但是当我在.NavBar中有text-align时,它可以工作。这是为什么?我认为它可以在 Buttons 中工作,因为它将相对于其父容器居中 ->NavBar。
2.在.NavBar 中,例如当我有高度20% 时,除非我以像素为单位进行硬编码,否则它不会改变。由于 NavBar 是主 App.js 的子级,所以它不会相对于 App 文件起作用吗?
App.js:
import React from 'react';
import {NavBar} from './NavBar/NavBar';
function App() {
return (
<div className="AppMain">
<NavBar/>
</div>
);
}
export default App;
App.css:
.AppMain{
height: 100%;
}
NavBar.js:
import React from 'react';
import './NavBar.css';
export class NavBar extends React.Component{
render(){
return(
<div className="NavBar">
<button className="Buttons">About</button>
<button className="Buttons">Contact</button>
<button className="Buttons">Info</button>
<button className="Buttons">Home</button>
</div>
)
}
}
NavBar.css:
.NavBar{
background-color: black;
height: 20%;
}
.NavBar .Buttons{
margin-right: 20px;
margin-left: 20px;
text-align: center;
margin:auto;
}
【问题讨论】: