标头中的CSS定位元素

时间:2018-11-16 04:05:13

标签: css reactjs material-ui jss

所以我试图创建一个导航菜单标题,并且它还包含一个徽标,这很简单,但是左侧的某些按钮与徽标本身是内联的,它们出现在徽标的底部,位于订单的右侧,但在底部,我不确定如何使用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);

https://i.imgur.com/OnTjO4l.png

1 个答案:

答案 0 :(得分:0)

使用CSS解决它的多种方法。最简单的方法是在vertical-align: top类中使用button。但是,我建议您研究display: flex。垂直对齐要容易得多。

在这里使用JSFiddle:http://jsfiddle.net/Lhefbudx/

希望这会有所帮助。