CSS的background-image属性应该如何正确使用?
- 它需要加引号吗,例如:
background-image: url('images/slides/background.jpg');
- 它可以是相对路径(如上所示)还是必须是完整的URL?
- 我应该注意哪些其他方面以确保它能在符合标准的浏览器中正常工作。
CSS的background-image属性应该如何正确使用?
background-image: url('images/slides/background.jpg');
路径可以是完整的或相对的(当然,如果图像来自另一个域,必须是完整的)。
在URI中,您不需要使用引号,语法可以是:
background-image: url(image.jpg);
或者
background-image: url("image.jpg");
不过,在W3中提到:
在未使用引号的URI中出现的某些字符,例如括号、空格、单引号(')和双引号("),必须用反斜杠进行转义,以便生成的URI值是一个URI令牌:'\(', '\)'。
所以在这种情况下,必须使用引号或双引号,或者转义这些字符。
不需要引号。
可以使用,但请注意相对URL是从你的样式表的URL解析出来的。
最好不要使用引号。我认为有些客户端无法理解它们。
1)加上引号是一个好习惯。
2)它可以是相对路径,例如:
background-image: url('images/slides/background.jpg');
将在加载CSS的文件夹中查找图像文件夹。因此,如果图像位于另一个文件夹中或不在CSS文件夹树中,则应使用绝对路径或相对于根路径的路径(以/开头)。
3)您应该使用完整声明的background-image属性,以使其在符合标准的浏览器中表现一致,例如:
background:blue url('/images/clouds.jpg') no-repeat scroll left center;
background
而不是 background-image
? - Gumbobackground-image
不应该像 @Gumbo 建议的那样改为 background
吗? - KNUbackground-image: url('/Images/bgi.png');
相对路径没问题,不需要引号。另一个有用的技巧是使用“速记”background
属性,在图像无法加载或出现其他问题时指定背景颜色。
#elementID {
background: #000 url(images/slides/background.jpg) repeat-x top left;
}
请注意,您可以指定图像是否重复以及重复的方向(如果未指定,则默认水平和垂直重复),以及图像相对于其容器的位置。
请检查目录结构,确定图像所在位置。例如,如果您有一个CSS文件夹和一个位于CSS文件夹外面的图像文件夹,则必须使用"../images/image.jpg",这样它就可以像我一样正常工作了,只需确保目录结构正确。
只需在您的CSS文件中编写以下内容:
background:url("images/logo.jpg")
如果您从CSS文件中使用图像,实际上不需要引号,可以直接使用
{background-image: url(your image.png/jpg etc);}
你不需要使用引号,可以使用任何你喜欢的路径!
请查看相应的SitePoint参考页面background-image和URIs
<style>
部分中,路径将相对于该文件夹;浏览器将在css文件夹下寻找images文件夹:css/images/image.jpg
。 - Tim