2013-10-29 51 views
0

我正在研究Spring MVC 3.2.4.FINAL應用程序,並使用JSP文件作爲我的視圖技術。我的部分設計在我的CSS樣式表中使用了imgs/etc。在CSS文件中使用JSP或Spring標記

例:

.main #footer #footerlist { 
    background: url(/resources/images/main-foot_impersonating.jpg) no-repeat !important; 
} 

問題,當然,是上下文路徑不暴露。我需要編寫此爲:

.main #footer #footerlist { 
    background: url(/contextRoot/resources/images/main-foot_impersonating.jpg) no-repeat !important; 
} 

然而,在一個理想的世界,我不想硬編碼上下文根,並有Spring自動生成對我來說。在一個正常的JSP文件,我將能夠把它寫成:

<spring:url value="/resources/images/main-foot_impersonating.jpg" /> 

我知道,當然,我可以重命名我的CSS作爲.css.jsp迫使JSP引擎編譯它,然後將其編碼爲一個jsp頁面,但我想知道是否有另一種技術/解決方案。

我認爲我不應該是第一個需要在CSS文件中包含一些應用程序值的人。

回答

0

不是一條堅硬而快速的規則,但通常是使css文件中的任何url相對而不是絕對的最佳做法。這樣他們永遠不需要知道他們在哪裏被部署和「只是工作」。有關此事的另一個stackoverflow討論,請參閱:Absolute vs relative URLs

0

我記得在一個項目上做了這樣的事情。

我們製作了一個彈簧控制器映射到css或css內的資源(圖像),並且控制器添加了正確的上下文。

相關問題