可以在CSS中提供背景图片吗?

时间:2011-11-28 22:07:50

标签: html css background tags

或者出于某种原因这是不好的做法?

非常感谢!

5 个答案:

答案 0 :(得分:4)

我只是将它添加到body元素中,你将获得相同的效果。或者,如果您正在查看双背景,您可能需要查看能够使用此功能的CSS3组件。 (虽然与所有浏览器版本不兼容)

答案 1 :(得分:2)

鉴于你的问题......

这是一种不好的做法。

整个页面正文的背景应该应用于body标签:

body { background-image:url('sunny.gif') }

这是最好的做法。

请注意,如果您使用的图像小于屏幕,则会重复该图像!

通常建议的做法是指定匹配的背景颜色,因为它会立即出现(然后被替换)。

body { background-image:url('sunny.gif'); background-color:#b0c4de; }

另一个捷径是:

body { background: #b0c4de; url('sunny'.jpg) } # could also add repeat/scroll/top

以下是背景的完整列表:

  • 背景附件
  • 背景颜色
  • 背景图像
  • 背景位置
  • 背景重复

好评:http://www.beginnersguidetohtml.com/references/css

答案 2 :(得分:2)

在我看来,html比背景更适合背景。 W3C的建议是不同的。我认为这是由于与非常老的浏览器的兼容性,如Internet Explorer 5.5,Netscape Navigator 4或更具异国情调的东西。无论哪种情况,这两个地方都有效。

http://www.w3.org/TR/2011/REC-CSS2-20110607/colors.html第14.2点 http://www.w3.org/TR/2011/CR-css3-background-20110215/点3.11

有一个小怪癖。

  1. 如果您在主体端设置背景而不是html,则浏览器会将其解释为html的背景,而不是正文。
  2. 如果你在html上设置背景,一切都按预期工作。
  3. 如果您在html和body上设置背景,您可能会看到正文框小于html框。

答案 3 :(得分:-1)

我不认为这是一个问题。它适用于旧版浏览器。虽然我建议您不要在html标记中添加许多其他样式,但它们在浏览器中往往有点不一致。

答案 4 :(得分:-2)

W3C Schhols表示无效:

  

核心属性   在base,head,html,meta,param,script,style和title中无效   元件。

这些无效属性的列表是查找here

您为什么不给<body>样式属性?