0

私のスクリプトでは、リスト項目を削除し、スクリプトから収集したデータに置き換えています。奇妙なことに、インライン ブロック要素は、再追加されると x% シフトします。

これは、何が起こっているかを確認するためのフィドルです。Safari 5.1.7 (Mac) と Firefox 14.0.1 (Mac) で試してみました。レンダリングの問題かもしれないと思いましたが、問題は明らかにそれとは関係ありません。私が書いたスタイルに加えて、両方の計算されたスタイル (前と後) をチェックしましたが、何か違うものは見つかりませんでした。

何が起こっているか知っている人はいますか?

編集:
私にとっての結果は次のとおりです。

a1: 54
div: 75
a2: 96

a1: 54
div: 70 <== 5px のシフトに注意
a2: 86 <== 10px のシフト (5+5) に注意

4

1 に答える 1

3

元の HTML では、要素間に空白 (具体的には改行) があり、レンダリング時に単一のスペースに変わります。

しかし、JavaScript で HTML を構築すると、要素間に空白を入れずに要素が追加されるため、要素は互いに直接隣接してレンダリングされ、左にシフトします。

http://jsfiddle.net/barmar/FeDxk/2/を参照

于 2012-08-05T03:35:29.147 に答える