2013-02-09 68 views
0

更新我的CSS之前后达到从我的CSS我的照片,我在Login.css如下:无法移动CSS文件到新的css文件夹

body 
{  
    background-image: url('./pictures/fond.png');  
    background-repeat: repeat-x; 
} 

这里是我的结构:

enter image description here

现在我有下面的CSS:

body 
{  
    background-image: url('../pictures/fond.png');  
    background-repeat: repeat-x; 
} 

请注意在次双点e网址。

这里是我的新的结构:

enter image description here

我的问题:我的IIS测试服务器上发布时,我看不到我的照片!?在本地开发机器上(VS2012),我可以看到我的照片。

但如果我更新我的IIS的测试服务器上的Login.css,并用一个点替换我的双点它再次工作。这不是逻辑,因为(我更新后)Login.css现在位于css文件夹下。

有什么想法?

谢谢。

UPDATE ----------------

这里是我refererence我的CSS的方式:

bundles.Add(new StyleBundle("~/Content/bundleLogin").Include(
      "~/Content/css/bootstrap.css", 
      "~/Content/css/Login.css")); 

我创建了一个包,然后:

@Styles.Render("~/Content/bundleLogin") 

回答

0

我敢打赌,你有硬编码的路径,在视图中的CSS文件,像:

<link href="Content/css/Login.css" rel="stylesheet" type="text/css" /> 

,而不是做这件事当然是正确的waywhich是使用网址帮手:

<link href="@Url.Content("~/Content/css/Login.css")" rel="stylesheet" type="text/css" /> 

至于你的CSS文件而言,您引用存在(如图像)的所有URL总是相对于CSS文件的当前位置。所以如果你正确地引用你的CSS文件,你将不会有任何问题。使用url('../pictures/fond.png');是正确的相对位置。


UPDATE:

哦,我明白了这个问题。你正在使用捆绑。那么,捆绑软件的问题在于,你声明捆绑软件的名称的方式,你没有与物理结构相同级别的文件夹嵌套。因此,修改您的包是这样的:

bundles.Add(new StyleBundle("~/Content/css/bundleLogin").Include(
     "~/Content/css/bootstrap.css", 
     "~/Content/css/Login.css")); 

然后:

@Styles.Render("~/Content/css/bundleLogin") 
+0

请参阅我的问题我的更新来了解我如何引用我的CSS从我的观点。谢谢。 – Bronzato 2013-02-09 13:30:47

+0

哦,现在我明白了。你正在使用捆绑。那就是问题所在。让我更新我的答案。 – 2013-02-09 13:32:48

+0

非常感谢。 – Bronzato 2013-02-09 13:36:21