CSS 在 header 中定位元素
CSS Positioning elements in a header
所以我正在尝试创建一个导航菜单 header,其中还包含一个徽标,相当简单,但左侧的一些按钮 inline-block 带有徽标本身,并且它们出现在徽标的底部,根据顺序位于徽标的右侧,但在底部,我不确定如何使用 css 使它们到达容器的顶部或者它们的顶部容器比我想的要低?
import React from 'react';
import {Link} from 'react-router-dom';
import { AuthService } from './backend/client/auth';
import { Paper, Button } from '@material-ui/core';
import { withStyles } from '@material-ui/core/styles';
const styles = theme => ({
container: {
'height': 128,
},
leftnav: {
'display': 'inline-block',
},
rightnav: {
'float': 'right',
},
button: {
'display': 'inline-block',
}
});
class Header extends React.Component {
render() {
const { classes } = this.props;
return (
<Paper className={classes.container}>
<div className={classes.leftnav}>
<Link to="/" className={classes.button}>
<img src="https://imageserver.eveonline.com/Corporation/98523546_128.png" alt="Hole Puncher's Logo"></img>
</Link>
<Button component={Link} to="/">
Home
</Button>
<Button component={Link} to="/store">
Browse
</Button>
<Button component={Link} to="/contact-us">
Contact Us
</Button>
</div>
<div className={classes.rightnav}>
{AuthService.isAuthed()
? <Button component={Link} to="/account/orders">Account</Button>
: ''}
{AuthService.isAuthed()
? <Button component={Link} to="/login">Login</Button>
: <Button onClick={AuthService.logout} component={Link} to="/login"></Button>}
</div>
</Paper>
)
}
}
export default withStyles(styles)(Header);
使用CSS的多种方法来解决它。最简单的方法是在 button
class 中使用 vertical-align: top
。但是,我建议您查看 display: flex
。垂直对齐要容易得多。
在这里工作 JSFiddle:http://jsfiddle.net/Lhefbudx/
希望对您有所帮助。
所以我正在尝试创建一个导航菜单 header,其中还包含一个徽标,相当简单,但左侧的一些按钮 inline-block 带有徽标本身,并且它们出现在徽标的底部,根据顺序位于徽标的右侧,但在底部,我不确定如何使用 css 使它们到达容器的顶部或者它们的顶部容器比我想的要低?
import React from 'react';
import {Link} from 'react-router-dom';
import { AuthService } from './backend/client/auth';
import { Paper, Button } from '@material-ui/core';
import { withStyles } from '@material-ui/core/styles';
const styles = theme => ({
container: {
'height': 128,
},
leftnav: {
'display': 'inline-block',
},
rightnav: {
'float': 'right',
},
button: {
'display': 'inline-block',
}
});
class Header extends React.Component {
render() {
const { classes } = this.props;
return (
<Paper className={classes.container}>
<div className={classes.leftnav}>
<Link to="/" className={classes.button}>
<img src="https://imageserver.eveonline.com/Corporation/98523546_128.png" alt="Hole Puncher's Logo"></img>
</Link>
<Button component={Link} to="/">
Home
</Button>
<Button component={Link} to="/store">
Browse
</Button>
<Button component={Link} to="/contact-us">
Contact Us
</Button>
</div>
<div className={classes.rightnav}>
{AuthService.isAuthed()
? <Button component={Link} to="/account/orders">Account</Button>
: ''}
{AuthService.isAuthed()
? <Button component={Link} to="/login">Login</Button>
: <Button onClick={AuthService.logout} component={Link} to="/login"></Button>}
</div>
</Paper>
)
}
}
export default withStyles(styles)(Header);
使用CSS的多种方法来解决它。最简单的方法是在 button
class 中使用 vertical-align: top
。但是,我建议您查看 display: flex
。垂直对齐要容易得多。
在这里工作 JSFiddle:http://jsfiddle.net/Lhefbudx/
希望对您有所帮助。