使用 Gatsby + Material UI。试图制作一个导航栏,但按钮居中。我究竟做错了什么?
Using Gatsby + Material UI. Trying to make a navbar but with the buttons centered. What am I doing wrong?
我用谷歌搜索了几个小时,但我找不到任何东西。
这是我的 Navbar 组件代码:
import React from "react";
import AppBar from "@material-ui/core/AppBar";
import Toolbar from "@material-ui/core/Toolbar";
import { makeStyles } from "@material-ui/core/styles";
import Typography from "@material-ui/core/Typography";
import Button from "@material-ui/core/Button";
const useStyles = makeStyles(() => ({
toolbar: {
textAlign: "center",
},
root: {
background: "linear-gradient(45deg, #FE6B8B 30%, #FF8E53 90%)",
border: 0,
borderRadius: 3,
boxShadow: "0 3px 5px 2px rgba(255, 105, 135, .3)",
color: "white",
height: 48,
padding: "0 30px",
},
}));
const NavBar = () => {
const classes = useStyles();
return (
<div>
<AppBar position="static" color="secondary" elevation={0}>
<Toolbar className={classes.toolbar}>
<Button className={classes.root}>Hook</Button>
</Toolbar>
</AppBar>
</div>
);
};
export default NavBar;
如你所见,重要的部分是<Toolbar className={classes.toolbar}>
,因为它指的是js样式textAlign: "center"
中的css。我的结果是按钮在左侧,而不是中间。这是一张图片:
Picture
Junaid已经解决了,toolbar:应该是:
toolbar: {
dislay: "flex",
justifyContent: "center"
},
它使用 flexbox 以方便布局。 css-tricks.
上有更多内容
我用谷歌搜索了几个小时,但我找不到任何东西。
这是我的 Navbar 组件代码:
import React from "react";
import AppBar from "@material-ui/core/AppBar";
import Toolbar from "@material-ui/core/Toolbar";
import { makeStyles } from "@material-ui/core/styles";
import Typography from "@material-ui/core/Typography";
import Button from "@material-ui/core/Button";
const useStyles = makeStyles(() => ({
toolbar: {
textAlign: "center",
},
root: {
background: "linear-gradient(45deg, #FE6B8B 30%, #FF8E53 90%)",
border: 0,
borderRadius: 3,
boxShadow: "0 3px 5px 2px rgba(255, 105, 135, .3)",
color: "white",
height: 48,
padding: "0 30px",
},
}));
const NavBar = () => {
const classes = useStyles();
return (
<div>
<AppBar position="static" color="secondary" elevation={0}>
<Toolbar className={classes.toolbar}>
<Button className={classes.root}>Hook</Button>
</Toolbar>
</AppBar>
</div>
);
};
export default NavBar;
如你所见,重要的部分是<Toolbar className={classes.toolbar}>
,因为它指的是js样式textAlign: "center"
中的css。我的结果是按钮在左侧,而不是中间。这是一张图片:
Picture
Junaid已经解决了,toolbar:应该是:
toolbar: {
dislay: "flex",
justifyContent: "center"
},
它使用 flexbox 以方便布局。 css-tricks.
上有更多内容