- PR -

スタイルシートが適用されないです。

1
投稿者投稿内容
ゆき
大ベテラン
会議室デビュー日: 2003/11/02
投稿数: 121
投稿日時: 2006-05-01 22:00
こんばんは。
VS2005のASP.NETにあるマスターページを使っているのですが、
スタイルシートが適用されません。
現象は、
・マスターページに、CSSへのリンクがある。
・そのCSSファイルに、マスターページと、WebFormに適用するCSSが書かれている。
・ページを開くと、マスターページ部分にはCSSが適用されているが、WebForm部分にはCSSが適用されていない。
です。
マスターページとは別に、
WebFormごとにCSSファイルへのリンクを付けたらどうかなと思ったのですが、
マスターページを使うと、
WebForm部分にはhead要素が無くなるので、
リンクをすることができません。
どなたかご存知の方はいませんでしょうか。

それと、仮想サーバを使って作っていたのですが、
これを途中から、ローカルのIISに変更することはできるのでしょうか。

よろしくお願いします。
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2006-05-02 05:36
引用:

・マスターページに、CSSへのリンクがある。
・そのCSSファイルに、マスターページと、WebFormに適用するCSSが書かれている。
・ページを開くと、マスターページ部分にはCSSが適用されているが、WebForm部分にはCSSが適用されていない。


ASP.NET 2.0でスタイルシートを使用するときはテーマ/スキンファイルを使用する
ことをお勧めします。

今回の現象はWebFormとCSSファイルが別フォルダに格納されているのが原因と
思われます。WebFormをマスタページ/CSSファイルと同じフォルダに移動して
ください。

マスタページとWebformを別フォルダに分離したいときはテーマを使用してください。
_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
どっとねっとふぁん
ぬし
会議室デビュー日: 2005/02/23
投稿数: 935
投稿日時: 2006-05-02 12:45
> 今回の現象はWebFormとCSSファイルが別フォルダに格納されているのが
> 原因と思われます。

ページを開いた状態でマスターページの部分にCSSが適用されているなら
フォルダが異なったとしてもそれは原因にはならないように思います。
気になるのはCSSファイルのなかでWebFormに適用するためにどのような
CSSを記述しているかですね。
マスターページに含めることにより、WebFormに存在するコントロールの
IDが変わってきます。たとえばLabel1がctl00_Label1になったりします。
部分的にCSSが適用されない、ということだとこの部分に対する対応が
きちんととれているのかどうか気になります。
ゆき
大ベテラン
会議室デビュー日: 2003/11/02
投稿数: 121
投稿日時: 2006-05-03 15:27
こんにちは。ありがとうございます。
>部分的にCSSが適用されない
htmlタグも含めて、全てに適用されないので、
コントロールの名前とは別の問題だと思います。
>テーマ/スキンファイル
これを使って、なんとかできました。
問題が解決しているわけではないので、
今ひとつすっきりしませんが。
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2006-05-04 06:00
引用:

>テーマ/スキンファイル
これを使って、なんとかできました。
問題が解決しているわけではないので、
今ひとつすっきりしませんが。


ASP.NET 2.0ではマスターページがサポートされたことによりCSSなどのurlがリライトされます。

たとえば、background: #ffffff url("bg.gif")のようなurlを宣言したとき「bg.gif」をどこに格納するかが重要になります。このCSSをCSSファイルに格納したときはCSSファイルが格納されているフォルダをベースにした相対パスを指定します。

これによりテーマ別に異なるbg.gifが適用されます。


_________________
ASP.NET+Ajaxサンプル集

[ メッセージ編集済み 編集者: Access 編集日時 2006-05-04 06:08 ]
1

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