0

App_Themesプロジェクトで使用している ASP Web サイトがあります。

このウェブサイト内に、 に取り組んでいる別の同僚の作品をマージしました/colleague_work/。新しい作品には、App_Themes から独立した新しいスタイル、つまり/colleague_work/styles.css.

でサイトのソースを表示すると/colleague_work/default.aspxApp_Theme/Theme1/AppStyles.cssがページに挿入され、スタイルが上書きされています。

App_Themes から Web サイトの残りのスタイリングを混乱させることなく、スタイルシートを交換したり、最初のスタイルシートを無効にしたりするにはどうすればよいですか? 同僚のスタイルシートをその場所から App_Themes フォルダーに移動することは許可されていません。

ファイル ツリー構造:

ファイル ツリー構造の例

4

1 に答える 1

1

内でASP.NETは、属性と要素は次の順序で優先されます (最初から最後まで)。

  1. @ Pageディレクティブのテーマ属性
  2. <pages theme="themeName">ファイルの<system.web>セクション内の要素web.config
  3. ローカル コントロールの属性
  4. StyleSheetTheme@ Pageディレクティブの属性
  5. <pages styleSheetTheme="themeName">web.configファイル内の要素

EnableTheming回避策の 1 つは、ディレクティブの属性@ Pageを false に設定styles.cssし、<link>タグで を参照して、特定のページのテーマを無効にすることです。

これは<!DOCUTYPE>タグの前に行われ、/colleague_work/default.aspxページでは次のようになります。

<%@ Page Language="C#" EnableTheming="false" %>
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="styles.css">
</head>
...
</html>

詳しくは:

方法: MSDN テーマを無効にする

于 2013-10-15T04:10:26.723 に答える