1

ログインしたユーザーと一般ユーザーの両方にページを表示する Web アプリケーション (C# でコード化された .NET 2.0) があります。ユーザーがログインすると、プロトコルは HTTPS に切り替わります。画像は、仮想ディレクトリ フォルダーにある CSS ファイルによって表示されています。問題は、HTTPS ページが表示されるときに、IE 8 がページにセキュリティ コンテンツが混在していることを示すメッセージを表示することです。ユーザーがブラウザーで混合コンテンツを無効にするのではなく、メンバーがログインしている場合に Web アプリケーションが HTTPS 経由で画像を提供することを望んでいません。

画像が HTML ファイルにある場合、プロトコル (HTTP または HTTPS) を指定するサーバー変数を HTML ページに渡すのは簡単です。しかし、プロトコルを指定してサーバー変数を CSS に渡すにはどうすればよいでしょうか? CSS ファイル内のパスはすべて相対パスです。

例: body { font: 12px Arial、Helvetica、sans-serif; 色: #000000; 背景: #eadcc8 url(../images/bg_top.gif ) no-repeat 0 0; テキスト整列: 中央; マージン: 0px; }

色とスタイルを除けば、CSS の機能についてはあまり詳しくありません。

事前にご協力いただきありがとうございます。

4

1 に答える 1

2

どこかに絶対パスが必要です。https ページにアクセスし、そのソースを見て、「http:」を検索します。それでもうまくいかない場合は、埋め込まれているファイルで探してください。

編集: それがうまくいかない場合、または複雑すぎると思われる場合は、Google Chromes 開発者ツール (「リソース」タブ) を使用してすべての http 要求を監視することもできます。

于 2010-11-03T18:08:14.087 に答える