0

私はSpring MVC 3.2.4.FINALアプリケーションに取り組んでおり、ビューテクノロジーとしてJSPファイルを使用しています。私のデザインの一部は、CSS スタイルシートで imgs/etc を使用しています。

元:

.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 ファイルにいくつかのアプリケーションの値を含める必要があったのは、私が初めてではないと思います。

4

2 に答える 2

0

厳格な規則ではありませんが、一般的には、css ファイル内の URL を絶対ではなく相対にすることがベスト プラクティスです。そうすれば、どこに展開されているかを知る必要がなく、「ただ働く」ことができます。この問題に関する別のスタックオーバーフローの議論については、ここを参照してください:絶対 URL と相対 URL

于 2013-10-29T17:58:42.157 に答える
0

プロジェクトでこのようなことをしたことを覚えています。

css または css 内のリソース (画像) にマップされたスプリング コントローラーを作成し、コントローラーが正しいコンテキストを追加しました。

于 2013-10-29T17:50:42.033 に答える