在查看了您的 CSS 之后,我注意到了一些可以通过稍微调整来解决的冲突。首先,我绝对建议您使用浏览器 Web 开发工具(例如 Firebug)进行更改和调整。我发现它可以节省您的耐心和挫败感。
我遇到的解决方案如下:
.body{
background-image: url('../images/go_here.png');
background-repeat:repeat-x;
background-attachment:fixed;
background-position: left top;
position:absolute;
height:610px
width: ?px;
margin:0;
}
如果您希望背景水平重复,请使用 background-repeat: x-axis; 垂直,背景重复:y轴;。为了确保背景不滚动,请使用 background-attachment: fixed;。背景位置应该使用两个单词或两个数字测量值(例如中心中心/左上/右上/右中/左中/右下或 0px 0px)。因为你希望背景有一个高度,我假设一个宽度;元素的位置必须是绝对的。如果您决定使用浮动,则主容器或背景必须是绝对的。
我的建议是,如果您想将文本附加到背景,这取决于您。根据我的经验,我发现最好将文本与背景分开。从长远来看,它只会减少头痛。我将文本编码如下:
.text{
text-align: center;
overflow: hidden;
height: 610?px;
width: ?px;
}
至于 img src 和 background-image 的用法,根据我的经验,我发现它们有冲突。由于某些奇怪的原因,除非标签之外有单词或短语,否则 img src 标签将不起作用。通过同时使用两者,img src 将覆盖背景 css 元素。我发现 img 标签在 CSS 中更难操作。这是可行的,但执行起来却是一场噩梦。
例子:
<div><img src="http://www.example.com">Example</div>
根据我的经验,我发现 img src 与 text-indent: -9999px; 密切相关。或显示:无;。除非标签有要附加的单词或元素,否则该标签将不起作用。文本缩进导致单词(即示例)被推离屏幕。显示:无;使该单词看起来不可见,但如果突出显示,它会出现在图像上。(如果这没有意义,我深表歉意。我总是可以澄清。)
至于 HTML 标记,我要么使用 img 标签,要么只使用 div 标签。HTML 标记:
<html>
<body>
<div class="text">I put my text here.</text>
</body>
</html>
让我知道这个是否奏效。我很抱歉,这变得这么长。我不是故意的。如果您遇到任何问题或需要更多说明,请告诉我。我不介意帮忙。