2009-07-09 15 views
1

で正しくDIVを表示していないこのビデオでは、最高の問題について説明します。http://www.screencast-o-matic.com/watch/cQ1Oc9f1LIE8 CSSバグ? JavaScriptの

は、基本的にはディレクトリが次の場所にあります。http://www.ipalaces.org/uploaderprogress/grrrrrr.html

アップロードスクリプトとしてYUI.jsを使用して、問題の作品です。 YUIは、すべてのイベントに関する新しい情報でテーブルの行を更新します。だから私はいくつかのCSS/HTMLでそれを更新するので、ロードバーを進捗させます。 IEを除くすべてのブラウザで正常に動作します。私はこれが既知のレンダリングのバグかどうかわからないし、もしそれが修正されていても?

working-demo.htmlは基本的に、javascriptを使用してdivのサイズを変更しただけではIEがうまくレンダリングすることを示しています。テーブルの行を新しいdiv情報で更新しただけでレンダリングの問題が発生するようです。

答えて

0

修正プログラムを適用したため、バグを再現できませんでした。しかし、私はソースを見ました。あなたが進捗バーをアニメ化する方法はバグを求めるだけです。 IE8で互換モードを試してみると、(要素が中央に配置されているため)拡大する代わりに縮小していることがわかります。プログレスバーが完成した要素はコンテナの2倍大きくなります。 ChromeやおそらくSafariでも同じです。

これは私がそれを行うだろうかです:

progressbar http://www.maikumori.com/host/progress.png

は、例えば、250ピクセルのための定数を作成します。次に、100%であるかのように、プログレスバーを含むAと同じサイズの背景イメージを作成する必要があります。その後

  • は、あなたが背景画像を作成する場合は以下のマークアップ
  • を取ります

    賛否

    background-position = B = -1 *恐らくMath.round(A * UploadedSize /ファイルサイズ) 2 * AとB = B + Aの場合、 "空白"スペース用のカスタムイメージを持つことができます。したがって、より美しいプログレスバーを簡単に作成できます。

  • modユーザーが無効になっCSS/JavaScriptを持っている場合ERNないので、最近のブラウザ
  • が混乱をしない

短所:

  • Aは定数でなければなりません
  • がテストしていない=(

PS 色がぼやけて申し訳ありませんが、後で変更できませんでした... mspaint

0

解決策が見つかりました。

私はHTMLでこれを含める場合、それは正常に動作します:IEは、トラブルのは、動的にJavaScriptで作成されたときに背景ファイルの「メモリ」を維持することを持っているよう

<div class='progressbar-completed' style='visibility: hidden;'></div> 

に思えます。

HTML自体にDIVを置くと、IEでバックグラウンドファイルのメモリが永続的になるようです。

+0

これがなぜ起こっているのか、それが固定され、ちょうど回避されない理由を他の人が理解できますか? – ParoX

関連する問題