質問

このバグを特定しようとしています。これはすでに既知の問題ですか、それともまったく新しいものですか?回避策(zoom:1またはposition:relativeを追加して修正することはできますか?)、ここでhtmlを変更せずに追加するのが理想的です。

IE8で以下のhtmlを表示すると、選択(コンボボックス)からのテキストが2回表示されます。コンボボックスの外側の1つ。これは私のドキュメントの流れを台無しにしています(奇妙に見えることは言うまでもありません)。

<html><body>
<div style="width: 800px;">
 <div style="float: right" >     
 </div> 
 <div style="display: none">
     ijklmno
 </div>
 <div style="float:left">
  <select>
   <option>abcdef</option>
  </select>
  <div style="float: right">
  </div>
 </div>
</div>
</body></html>
役に立ちましたか?

解決

これは間違いなくバグです。これは、レイアウトスタイルの規則がかなり明確だからです。しかし、それはそもそも本当に奇妙なアレンジメントでもあります。非表示のdivを再表示するか、テキストを追加するか、選択の下のdivを非表示にすると、問題はなくなります。私の一番の推測は、1つの非表示と1つの空のブロックレベル要素が重複しているため、IEはフロートを無視して互いの上に合わせようとしていますが、オプションを強制的に押し下げていますが、選択はそのままですselect内のオプションも表示されます。

非常に奇妙で非常にクールなキャッチ。私が見ているオプションは、最後のdivにコンテンツを追加するか(おそらく改行なしスペース)、divを非表示にする(表示:なし)、またはその両方です。

Firefoxでは、その最後のdivも右に浮いておらず、選択とオーバーラップしています(開発者ツールバーでブロックレベルの要素を概説することでわかります)。 。

最後のdivに境界線を設定すると、メインdivの右側に浮いていないことがわかります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top