我不知道如何解决这个问题。
这是我的小提琴:http://jsfiddle.net/ccX5u/
一切看起来都很好,减去了左侧的图像。但我的主要问题是,当我缩小浏览器窗口时,user name | Log off
会滑到一边。我真的想让它尽可能流畅。
我需要更改才能获得此行为?
<html>
<body>
<style>
.title-wrapper {
padding-top: 20px;
margin-left:auto;
margin-right:auto;
width: 98%;
display:block;
}
#title-area {
background: url('image.png')center center no-repeat;
float: left;
clear: none;
width: 270px;
height: 100px;
}
#menuTitleThin{
position:absolute;
padding-top:10px;
margin-left:15px;
margin-right:10px;
font-size:20px;
border-bottom: 3px solid #d95936;
width:82%;
}
#menuLoginInfo {
float:right;
font-size:20px;
position:relative;
}
#menuLoginInfo a {
text-decoration: none;
}
/* menu
----------------------------------------------------------*/
ul#menu {
font-size: 1.0em;
font-weight: 600;
margin: 50px 0 5px;
padding: 0;
text-align: left;
}
ul#menu li {
display: inline;
list-style: none;
padding-left: 15px;
}
ul#menu li a {
background: none;
color: #999;
text-decoration: none;
}
ul#menu li a:hover {
color: #333;
text-decoration: none;
}
</style>
<div class="title-wrapper">
<div id="title-area">
<span id="title"/>
</div>
<span id="menuTitleThin">Services - <b>Title</b>
<span id="menuLoginInfo"><span>user name</span> | <span>Log off</span></span>
</span>
<span>
<ul id="menu">
<li>test</li>
<li>test 2</li>
<li>test 3</li>
</ul>
</span>
</div>
</body>
</html>
答案 0 :(得分:1)
您的问题如下:
<span id="menuTitleThin">Services - <b>Title</b>
使用CSS规则
position: absolute;
您无法将绝对定位设置为内嵌元素。
要解决此问题,只需添加以下规则:
#menuTitleThin{
position:absolute;
padding-top:10px;
margin-left:15px;
margin-right:10px;
font-size:20px;
border-bottom: 3px solid #d95936;
width:82%;
/*******Add this rule********/
display:block;
}
将显示模式更改为阻止将修复它。
答案 1 :(得分:1)
这是流体设置中浮动元素问题的一个很好的例子。
您可以使用calc()设置#menuTitleThin
的宽度,这样可以让菜单保持流畅,并为左侧的#title-area
留出空间。然后你只需要适当地浮动#menuTitleThin
以允许平滑的重新调整大小:
<强> Working Example 强>
#title-area {
background: red url('image.png')center center no-repeat; /* added red for demo only */
float: left;
clear: none;
width: 270px;
height: 100px;
}
#menuTitleThin {
float: left; /* change here */
padding-top:10px;
margin-left:15px;
margin-right:10px;
font-size:20px;
border-bottom: 3px solid #d95936;
width: calc(100% - 295px); /* change here */
}
答案 2 :(得分:1)
你只是想做一些这样的事情:
http://jsfiddle.net/Riskbreaker/ccX5u/7/
.title-wrapper {position: relative; /*NEW*/}
#menuTitleThin {right: 0; /*NEW*/}
位置:相对根据您的放置方式控制绝对定位...在这种情况下,我添加到右侧(右侧:0)。我只修理了顶部菜单,我认为这就是你要求的地方。