2009-05-21 11 views
0

htmlファイルにインポートされたヘッダーからCSSファイルを完全に無視する方法はありますか?CSS継承

他のCSSソースから継承しない独立したCSSを1つのページに追加したいとします。

答えて

0

リンクされたCSSファイルを削除するにはJavaScriptを使用できますが、そのJavaScriptをそのページに追加する必要があります。

別の方法としては、そのページのCSSルールの完全に異なるセットをbodyタグにIDを入れて、ターゲットにできます。

標準ページ:

<body id="standard"> 

#standard h1 { 
    color:blue; 
} 

他のページ:

<body id="different"> 

#different h1 { 
    color:red; 
} 

事前に計画を立てることは、十分な価値があります。

0

あんまり。 cssを削除する方法があります(http://www.javascriptkit.com/javatutors/loadjavascriptcss2.shtml)が、IEでは動作しません

どのような状況でこれを行いたいですか?あなたはページをコントロールできませんか?

+0

:PHPでは、あなたが使用してIDを設定することができますASP.Netで

<body id="<?= basename($_SERVER['PHP_SELF'], ".php")?>"> 

であなたのビューで動的にこれを達成することができます。 –

1

このページにCSSファイルを含めないのは明らかな解決策ではありませんか?

+0

私は、プロジェクトのすべてのページに含まれているヘッダーファイルがあります。 –

0

あなたはiframe内にスタイルたくないコンテンツを入れて、その後、ヘッダは、まだページに表示されますが、スタイルが継承されることはありません。

+0

あなたがそれをdownvoteときコメント!あなたはそれがうまくいかないと思うか、誰かがあなたに「フレームは悪い」と言って、それをすべての文脈に盲目的に適用していると考えているため、これを下降させましたか? – SpliFF

+0

匿名 - と非役に立って - downvoteを削除するUpvoted。 –

3

apply a unique id to the <body> of your custom pageの場合は、グローバルCSSでそのページに固有の宣言を簡単に行うことができます。とにかく、あなたのグローバル/サイトのCSSがクライアントにキャッシュされるので、実際には別のCSSファイルを提供する意味はありません。

個人的には、これは一般的にページ固有のスタイルを管理するための良い方法だと思います。私はCSSのあらゆる種類の情報を追加するヘッダファイルを削除することはできません

System.IO.Path.GetFileNameWithoutExtension(HttpContext.Current.Request.Url.AbsolutePath).ToLower