完全な修正を修正

Shitov(Lebedev Studio)記事には、完全に機能する修正が記載されています。

私の手はそのような固定されたものの作成に到達し、提案されたソリューションを使用することに決めました。

しかし、うまくいきませんでした。 私は記事のソースコードを研究し始め(それはそこで機能します)、最終的には問題がDOCTYPEにあることがわかりました。 ご存知のように、レベデフは彼にそれを付けましたが、私はそれを書きました。 彼はIEで修正をオフにしました。





最初のオプション癖に戻る



doctypeを指定すると、概念全体がtartararaで飛びます。 コードが有効であることを確認し、すべてが機能することを確認します(外国のGoogleで2時間後)。

Doctypeの前に空白のHTMLコメントを入れます。 この場合:

1. w3cバリデーターは、コードが正しいと言います。

2. Ognennolisはdoctypeを認識し、それに応じて動作します。

3. IEはバカです-最初の行でdoctypeを見つけられず、互換モードに入ります。 修正された作品。

4コンピューター上のOperaは価値がありません-何も言わないでしょう。



DOCTYPEに転送する2番目のオプション



なぜこれが起こっているのですか?

すべてがいつものように非常に簡単です。 Shitovはdocument.body.scrollTopを使用します 。 ちなみに、ほとんどのインターネットユーザーは、Yandexが検索でそのような言葉だけを使用していた限り(そしてJSプログラマーもインターネットで教えてくれたので、哲学的側面に入らずにw3c標準に従うことについて本質的に言うことができます) )

IE準拠モードでは、オブジェクトモデルが変更されるため、 document.documentElement.scrollTopを使用する必要があります。

確認済み。

コード

body{

padding:5em 0 0 0;

}

h1{

position:fixed;

_position:absolute;

top:0;

_top:expression(eval(document.documentElement.scrollTop));

left:0;

margin:0;

padding:0;

background:lime;

}







h1-真上にありますが、現在はDOCTYPEのみ




All Articles