【发布时间】:2013-01-14 11:07:13
【问题描述】:
我有一个带有彩色背景的标题栏和一些右对齐的菜单项。标题栏应拉伸视口的整个宽度,并具有最小宽度以避免缩小到站点主体的(固定)宽度以下。即使标题栏扩展得更宽,内部的菜单项也应与网站的主体保持右对齐。到目前为止一切顺利:http://jsfiddle.net/symposion/fgrGD/
<div class="headerBar">
<div class="headerMenu">
Some item
</div>
</div>
<div class="mainContent">
</div>
.headerBar {
margin-top:30px;
background-color:black;
color:white;
min-width:400px;
padding-top:10px;
padding-bottom:10px;
}
.headerMenu {
text-align:right;
max-width:400px;
margin-left:auto;
margin-right:auto;
}
.mainContent {
width:400px;
margin-left:auto;
margin-right:auto;
background-color:blue;
height:100px;
}
复杂的地方在于,当浏览器的大小调整为小于主站点,以充分利用剩余空间。这样做的天真方法是从标题栏中删除最小宽度,但这显然意味着当您向右滚动时会出现令人讨厌的空白。
约束:
- 我无法将标题设为固定高度,它需要根据其内容扩展和收缩
- 没有 JS
- 理想情况下,我希望在标题中避免大量冗余标记;如果这是唯一的方法,我可以忍受一点。
- 需要在 IE8+、Firefox、Chrome、Safari、iOS 中工作
有什么想法吗?
【问题讨论】:
-
你试过媒体查询吗?