我是mvc应用程序的新手,并在aspx视图引擎中创建网站。 我在mycss / style.css中有一个css文件,图像在images / img1.jpg中。 有什么区别
background: url("../images/img1.jpg") no-repeat;
and background: url("~/images/img1.jpg") no-repeat;
in style.css
答案 0 :(得分:3)
background: url("../images/img1.jpg") no-repeat;
以上是相对于当前位置的。它上升到一个文件夹,然后下到图像文件夹,最后得到图片文件。
background: url("~/images/img1.jpg") no-repeat;
以上无效。代字号表示从站点根目录开始。但CSS并不支持这种语法。相当于background: url("/images/img1.jpg") no-repeat;
。
根据您的网站布局,两者都有效。我倾向于使用根相对路径,因为如果将CSS文件移动到不同的文件夹,它可能会破坏相对于当前位置的路径。
对于相对vs站点相对vs绝对值的良好讨论,see this article。
答案 1 :(得分:0)
您也可以这样写background: url("images/img1.jpg") no-repeat;
没有任何“前缀”,表示“图像文件夹中的图像。
答案 2 :(得分:-1)
这是正确的方法。
background: url("../images/img1.jpg") no-repeat;