2016-07-28 111 views
1

根據我的情況我需要存儲此路徑/img/product.png圖像在剃刀變量和後來我想要在CSS中使用該剃刀變量文件。下面的CSS代碼是在CSS文件ASP.Net MVC:如何在CSS文件中使用剃鬚刀變量

.test{ 
    background: url('/img/product.png') no-repeat scroll 0 0 transparent; 
} 

,所以我使用的代碼像下面這樣,但沒有運氣還是

.test{ 
    background: url('@Model.LogoUrl') no-repeat scroll 0 0 transparent; 
} 

我看到這個帖子http://www.codeproject.com/Articles/171695/Dynamic-CSS-using-Razor-Engine,但我不希望解決我的問題,因爲每個帖子。所以讓我知道如何分類這個問題。謝謝

+1

不如考慮自身使用內部樣式表。 – ssilas777

+0

@ ssilas777抱歉,不明白你想說什麼......你可以用一些例子來描述你說的話。感謝 –

+0

這是你的.cshtml文件或.css文件的代碼? –

回答

3

默認情況下,MVC不支持在外部CSS文件和外部Javascript文件中編寫服務器端代碼。

爲了您的工作,您可以在您的視圖文件本身添加一個內部樣式表,它將工作。

如:

@{ 
    ViewBag.Title = "Title"; 
} 
<style> 
    .test { 
     background: url('@Model.LogoUrl') no-repeat scroll 0 0 transparent; 
    } 
</style> 
+0

它與類似的問題 –

+0

不是他正在試圖放入外部的css文件,我想讓他自己看看。 – ssilas777

+0

background:url('@ url.content(Model.LogoUrl)');可能會幫助:) –

-1

據我所知,你不能在CSS文件中引用或寫入Razor代碼。 CSS文件是由其中的剃刀代碼由服務器執行,然後通過瀏覽器

渲染有關問題的瀏覽器處理後,您將需要編寫一個內嵌樣式

+0

看看https://stackoverflow.com/questions/ 4492748/dynamic-css-for-asp-net-mvc –

0

你也可以做到這一點在HTML部分是這樣的:

例如:

<div class="test" style="background: url([email protected]) no-repeat scroll 0 0 transparent;"> 
... 
</div>