我有一张图片,我将其用作徽标。
我希望它始终居中(无论窗口大小如何)。
我无法使用自动边距执行此操作。
图片必须覆盖导航栏的底部,导航栏位于徽标上方。
HTML:
<div id="logo">
<img src="images/logorz.png" alt="logo" width="180px" />
</div>
CSS:
#logo {
position: absolute;
margin-left:41%;
margin-top:-7%;
}
NAV HTML:
<div id="nav">
<ul>
<li><img src="images/kranznav.png" alt="kranz" /><a href="index.php">COMPETE</a></li>
<li><img src="images/thumbnav.png" alt="thumb" /><a href="index.php">SCORE</a></li>
<li><img src="images/bagnav.png" alt="bag" /><a href="index.php">SHOP</a></li>
<li><img src="images/morenav.png" alt="more" /><a href="index.php">MORE</a></li>
</ul>
</div>
<div class="clear">
</div>
NAV CSS:
#nav {
background:#ffffff;
width:100%;
margin-top:-2em;
}
#nav ul {
list-style-type:none;
}
#nav li {
display:inline;
float:left;
width:20%;
margin-left:2%;
margin-right:2%;
margin-top:5%;
text-align:center;
}
#nav a {
display:block;
margin-right:0% auto;
padding-left:0% auto;
color:#5E09CB;
text-decoration:none;
}
答案 0 :(得分:2)
如果您的徽标是width: 180px;
,并且您希望始终将其置于中心位置。你可以这样做。
position: absolute;
left: 50%;
margin-left: -90px;
答案 1 :(得分:1)
没有必要使用javascript。
你可以这样做:
#logo {
position: absolute;
left:50%;
margin-left:-50px;
width:100px;
}
请注意,元素需要有宽度,负左边距是宽度的一半。
答案 2 :(得分:0)
如果您需要将图像放在导航的顶部,请尝试使用z-index属性...
像这样......css {
z-index:2;
}
使用z-index将一个元素放在另一个元素上...确保你给另一个元素的z-index少于这个......
这可能有用......
答案 3 :(得分:0)
#logo {
position: relative;
margin:0 auto;
width:180px;
}
auto
自动设置左边距和右边距,因此#logo
始终位于页面中心...某些浏览器需要position:relative
才能完成此工作...
答案 4 :(得分:0)
你需要一个包装导航和图像的包装器。图像标签不需要用不必要的div包围。然后,您可以将图像设置为
image {
position:relative;
widhth: image_size_here px;
margin: auto;
display:block;
}
这是我保存的jsfiddle供您参考... http://jsfiddle.net/vASmC/