0

ASPクラシックサイトの再設計に取り組んでいます。サイト全体には、すべてのスタイルを含むMainと呼ばれる1つの主要なCSSファイルがあります。現在のデザインはほとんどデフォルトであるため、このファイルには多くのスタイルはありません。一部のページの要素には、スタイルがインラインで記述されています。

その仕事は私にはかなり簡単に思えました。Main.cssですべての基本要素のスタイルを新しいデザインに変更しましたが、問題は、インラインで記述しても、一部のページの要素のスタイルが変更されないことです。要素によってスタイルプロパティの一部が変更されることがありますが、全体的には変更されません。そして時々、新しいスタイルは私の理解を超えてページレイアウトを台無しにするだけです。

それらの問題のあるページに含まれているMain.css。これらのページにはすべて、ビジネスロジックを含む多くのASPコードが含まれています。私はASPClassicプロではないので、これらの要素が基本的なHTMLおよびCSSスタイルに準拠しない原因は何でしょうか。

たとえば(私はロシア出身ですが、サンプルは明確である必要があります):

これは、ASPページの1つのコードです。 ここに画像の説明を入力してください

結果は次のとおりです。 ここに画像の説明を入力してください

これが私がスタイルウォッチャー(IE9)から得たものです:

インラインスタイルの入力ボタン: ここに画像の説明を入力してください

Main.cssスタイルの入力ボタン: ここに画像の説明を入力してください

ご覧のとおり、インラインスタイリングを使用すると、その一部のみが適用されますが、これは非常に奇妙です。また、ファイルを使用してスタイルを適用するとMain.css、BODYタグからのみ継承され、input[type="button"]セレクターに反応しません。他のページでは、このセレクターは問題なく機能します。

UPD1。に変更することで、結果のページの奇妙なタグを削除し</link/>たようです。しかし、それは私の問題を解決しませんでした。このページは引き続きMain.cssファイルの存在を認識し、その一部(たとえば、BODYタグスタイル)をボタンに割り当てますが、ボタン自体に関連付けられたスタイルは認識しません。</input/><link ...></link><link .../>input

UPD2。とても奇妙なものを見つけました。問題のあるページが受け取るファイルは、元のMain.cssファイルと同じではありません。このファイルの要素には、次のような元の属性がありません。

オリジナルMain.css

INPUT.button {
    min-width: 143px;
    font-face: Arial;
    height: 34px;
    border: 1px solid grey;
    background: #FCFCFC;
    border-radius: 7px;
    box-shadow: 0 0 2px grey;
    padding-left: 10px;
    padding-right: 10px;    
}

受信Main.css

INPUT.button {
    min-width: 143px;
    font-face: Arial;
    height: 34px;
    border: 1px solid grey;
    background: #FCFCFC;
    padding-left: 10px;
    padding-right: 10px;    
}

一部の属性をスキップしているように見えますが、どうすれば可能ですか?

4

2 に答える 2

0

Aspはスタイルとは何の関係もありません。レンダリングされた後、適用されたスタイルを確認する必要があります。Chromeをお勧めします。要素を右クリックすると、[要素の検査]を選択できます。右側にボックスがあり、要素に適用されているスタイルを正確に確認できます。その時点で、それは問題のあるスタイルがどこから来ているのかを見つけることの問題です。

ほとんどの場合、新しいスタイルと競合する、含まれているaspページのどこかにレンダリングされているインラインスタイルがあります。Chromeを使用して注入されているスタイルを確認したら、そのスタイルが定義されている場所を見つけることができます。

于 2012-11-13T12:40:01.190 に答える
0

<!DOCTYPE html>そのため、問題は、一部のページでタグが欠落していることでした。また、これらの問題のあるページには、タグの前にASPコードの一部が<html>含まれていたため、ページ全体が正しくレンダリングされませんでした。<head>それを修復するために、タグ内のすべてのASPコードを移動しただけで、すべてが正常に機能するようになりました。

于 2012-11-17T07:07:29.657 に答える