按照这个答案的方法,我尝试垂直居中我的header
元素,但是由于中间有一个container
元素,它确保它们被包含在特定的max-width
内并且居中。我将display: table-cell
应用于此元素,现在它的max-width
不起作用(不管其max-width
如何,都会占据整个屏幕宽度)。如何解决这个问题?
标记:
<header class="banner">
<div class="container">
<a class="header__branding" href="<?php bloginfo( "wpurl" ); ?>">
<img src="<?php bloginfo( "template_url" ); ?>/dist/images/baia_logo.svg" />
</a>
<nav class="nav_primary">
<?php wp_nav_menu( array( 'menu' => 'main menu' ) ); ?>
</nav>
</div>
</header>
CSS(层叠样式表):
.banner {
height: 160px;
width: 100%;
display: table;
background: url(../images/header.jpg) 50% 50% repeat-x;
}
.container {
max-width: 1500px;
margin-left: auto;
margin-right: auto;
overflow: hidden;
vertical-align: middle;
display: table-cell;
}
.header__branding {
float: left;
width: 150px;
height: 52px;
display: block;
}
.nav_primary {
float: right;
}
container
及其所有内容居中放置在header
内,而不管container
内有什么? - theblindprophet