0

見出しがすでに質問されているように見えることは知っていますが、多くの検索を行った後、回答が見つからなかったので、これを質問しています。他のいくつかの場所でも見つけましたが、適切な解決策が見つかりませんでした。私はここで助けられると思います。

入力タイプのテキストボックスフィールドがあり、javascript を使用して動的にその周りに div を追加しています。この div には、1 つの class="errorFieldIcon" 属性があります。css ファイルにこのクラス定義があります。

IE7 開発者ツールでデバッグしようとすると、このクラスのコードが [スタイル] タブに反映されていることがわかりました。しかし、ページを見ると、スタイル効果がページに反映されていません。開発者ツールに移動し、[スタイル] タブで CSS プロパティのいずれかをオフ/オンにすると、この画像が表示されることに気付きました。

このような問題に初めて気付いたので、これは非常に驚くべきことです。ページが読み込まれるたびに画像/アイコンは表示されませんが、CSS プロパティのチェックを外すかチェックすると、画像が表示され始めます。

私のクラスコードは

.errorFieldIcon{
    background-image: url("../images/IcoMessageError.gif");
    height: 16px;
    left: -18px;
    position: absolute;
    top: 3px;
    width: 16px;
}

.errorFieldIcon {
    background-image: url("../img/ico_error.png");
    background-repeat: no-repeat;
}

コード

<TD class="DefaultFontBlack errorHighlight" vAlign=center colSpan=2 align=left>
 <DIV id=etvErrIcon class=errorFieldIconOwner>
  <DIV class=errorFieldIcon>
  </DIV>
 </DIV>
 <INPUT value=123# type=text name=SITE_DK_NUMBER_RULE>
</TD>

さらに情報が必要な場合は、提供できます。ローカルで実行しているため、リンクを提供できません。しかし、この説明で十分だと思います。

4

1 に答える 1

0

IE7 は、不適切な HTML に関しては非常に「うるさい」ものです。正しい HTML を使用すると、多くのエラーを修正でき、ブラウザがquirks モードに移行しなくなります。

小文字の HTML を使用し、属性を引用し、doctype を使用します。

CSS を確認してください。同じ要素/クラスに設定された 2 つの画像があるため、提供された CSS に基づいて、最後の画像のみが表示されます。

.errorFieldIcon {
  background-image: url("../img/ico_error.png");
  background-repeat: no-repeat;
}

あなたの CSS にはposition: relativeforがあり.errorFieldIconOwnerますか? 画像が表示されないのは、絶対配置が原因である可能性がありますか?

于 2013-02-12T12:29:23.510 に答える