ASP .Net Web ページ要素のスタイルがどこから来たのかを調べるにはどうすればよいでしょうか?
質問
困ったことがあります。私の Web アプリケーション (C#、.Net 3.0 など) には、テーマ、CSS シート、そしてもちろんインライン スタイル定義があります。今では多くのシェフがスープに何かを加えています。これらすべての結果、当然のことながら、私のページでは時々奇妙なスタイルが適用されます。
これらすべてのスタイルは階層的な方法で適用されていると確信しています (ただし、その順序はわかりません)。問題は、各スタイルが、適用されているものを単にマスクする「透明」レイヤーとして適用されることです。全体のスタイルを指定し、必要に応じて個別にスタイルを指定できるので、これは良いアイデアだと思います。残念ながら、そのスタイルが実際にどの層から来たのかはわかりません。
すべてのレイヤーでスタイルを明示的に表現することでこの問題を解決できますが、そうするとかさばって管理が難しくなり、ページは 80% の時間で機能します。その20%という膨大な数字がどこから来たのかを理解する必要があるだけだ。
解決
私の意見では、Firebug が最善の策となるでしょう。スタイルがどのファイルから来たのかが表示され、ファイル名をクリックすると、ファイル内の関連する行に即座に転送されます。
注記:打てますよ Ctrl+シフト+C 任意のページで、マウスで要素を選択して検査します。
他のヒント
これは、Firebug を使用して要素がどこからスタイルを取得しているかを調べる方法の簡単なスクリーンキャストです。
Firefox では、DOM インスペクタ、firebug を使用するか、これを検査してください。
IE では、IE 開発ツールバーを使用します (または、もっと良いかもしれません) ファイアバグ ライト)
Google Chrome では、組み込みの「要素の検査」機能を使用します。
の使用 IE開発者ツールバー 要素を選択し ([クリックして要素を選択] するか、DOM ツリー ビューでそのノードをクリックする) ことができ、[現在のスタイル] ペインで行を右クリックして [スタイルをトレース] を選択します。
他のツールにも同様の機能があります。
複雑な CSS 問題を解決する鍵は、奇妙な外観の原因を解明することです。見つける最も簡単な方法は、コメントアウトすると問題が解決するスタイルシートが見つかるまで、スタイルシートを選択的にコメントアウトすることです。次に、スタイルシートを有効にし、問題の原因となっているルールが見つかるまでルールを選択的にコメントアウトします。何が何よりも優先されるかを知りたい場合は、CSS のカスケードの詳細を参照してください。ここ 個別のルールの実装とは異なり、これはブラウザ間でかなり一貫しています。
ただし、インライン スタイルを完全に避けて、それぞれが論理的な機能を持ち、ルールをすべて理解した、よく練られたスタイルシートのセットを用意する方がはるかに優れています。同じ理由で、サーバー側のコードをランダムなファイルにランダムな順序で配置しないでください。 私たち