CSS:相对于背景图像定位图像

标签 css positioning

我想在具有 x 重复背景的网站上放置一个 Logo 和菜单,并且我希望这两个始终显示在背景的同一区域(背景上有一个更亮的条纹, Logo 应始终位于其中,而菜单项应略低于它)。

由于 Logo 和菜单图像会根据屏幕尺寸缩放并且背景只是重复,所以我无法让它在 y 轴上工作 - 知道如何做到这一点吗?

该页面是 sarahreesbrennan-fans (dot) com - 如果您看一下,您就会明白我的意思。 (这只是为了看看我在说什么,以防有人无法从描述中想象出来)。

我的页面代码是:

<div id="bg_wrapper"><img src="/wp-content/uploads/2013/08/floral.png" /></div>
<div id="logo"><img src="/wp-content/uploads/2013/08/logo1.png" width="50%" /></div>

还有 CSS:

body {
color: #444444;
font-family: verdana, sans-serif;
font-size: 10pt;
background: url(/wp-content/uploads/2013/08/page-back.gif) repeat-x #22221f;
}
#bg_wrapper {
position:absolute;
z-index:-1;
width:100%;
text-align:center
}
#logo {
padding-top: 3%;
padding-left: 3%;
}

非常感谢!

最佳答案

诀窍是使 div 的高度正确,并使图像在 div 中垂直居中。

#logo {
  padding-top: 0;
  padding-left: 3%;
  height:128px; line-height:128px;
}
#logo img {vertical-align:middle;}

查看此 Fiddle .

(请注意,在 fiddle 中,我还从 #bg_wrapper 中删除了 width:100%,因为这会导致出现水平滚动条,即使在 window 足够宽。)

关于CSS:相对于背景图像定位图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18258176/

相关文章:

javascript - 在 Backbone 应用程序的渲染功能上使用 addClass() 和 CSS transition 无法正常工作

javascript - 如何防止指针在 HTML 中通过?

html - 如何根据屏幕大小调整鼠标悬停在div上?

html - 页眉与正文不在一条直线上

html - 您将使用什么 CSS 规则来支持较小的屏幕和调整大小?

javascript - 在调整窗口大小时使用 JavaScript 重新定位元素是否可以?

html - 如何在另一个div中定位div

html - 水平堆叠 DIV

CSS div 固定定位

CSS - Google+ 框定位