- PR -

MasterPageのImageURLの設定について

1
投稿者投稿内容
Hiro
常連さん
会議室デビュー日: 2003/08/26
投稿数: 28
投稿日時: 2007-12-13 13:02
いつもお世話になります。
Hiroといいます。
ASP.net2.0にてMasterPageを利用した開発を行っておりますが
ルートにあるMasterPageに画像のパスを以下のように設定して
background-image:url(images/grdhead_bk.png);
コンテンツフォーム(a/aa/a.aspx)を表示する際、
MasterPageの画像が表示されません。
コンテンツページから画像のパスが通ってないのはわかるのですが
階層が違うコンテンツページにパスを通す場合、一般的にどのようにすれば
よいのでしょうか?

ご教授願います。

開発環境 VS2005
kiyokura
ベテラン
会議室デビュー日: 2007/08/08
投稿数: 69
お住まい・勤務地: 岡山
投稿日時: 2007-12-13 21:34
こちらは参考になりますでしょうか。

http://forums.microsoft.com/msdn-ja/ShowPost.aspx?PostID=1730877&SiteID=7
kiyokura
ベテラン
会議室デビュー日: 2007/08/08
投稿数: 69
お住まい・勤務地: 岡山
投稿日時: 2007-12-13 21:45
重ねてすみません。
先ほど挙げた物だとimgタグでrunat=serverとしないといけないので、ご質問の件だとそのまま使えないかも……ですね。

ほかの方法として、以下のような感じで VirtualPathUtility.ToAbsolute() を使ってみる方法はどうでしょうか。

コード:
background-image:url(<%=VirtualPathUtility.ToAbsolute("~/images/grdhead_bk.png")%>);

Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2007-12-14 06:10
引用:

ASP.net2.0にてMasterPageを利用した開発を行っておりますが
ルートにあるMasterPageに画像のパスを以下のように設定して
background-image:url(images/grdhead_bk.png);
コンテンツフォーム(a/aa/a.aspx)を表示する際、
MasterPageの画像が表示されません。


MasterPageを使用したときは、CSSなどのurlは、
コンテンツページ(a.aspx)が格納されているフォルダを基準に記述します。

background-image:url(../../../images/grdhead_bk.png);

参考までに、サーバーコントロールを使用するときは
ルートからのパスを設定します。

<asp:Image ID="Image1" runat="server"
ImageUrl="~/images/grdhead_bk.png" />

<img src="../../../images/grdhead_bk.png" />


_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
Hiro
常連さん
会議室デビュー日: 2003/08/26
投稿数: 28
投稿日時: 2007-12-14 10:16
kiyokuraさん、Accessさん
お世話になります。
VirtualPathUtilityや~での方法で
対応できました。
ありがとうございました。
こんごともご教授お願いします。
1

スキルアップ/キャリアアップ(JOB@IT)