5

これは私を困惑させました - 私のページには絶対位置を持つ要素があり、相対位置を持つコンテナの中にあります。IE7 を除くすべてのブラウザで、問題なく正しい場所に表示されます。

IE7 では、開発者ツールバーの [属性] タブでCSS プロパティを追加または編集するまで、要素は表示されません( のように、可視性や位置とは関係のないプロパティであってもcolor)。これを行うと、正しく表示され、追加したばかりのプロパティを削除しても (または変更を元に戻しても) 表示されたままになります!

これは IE7 固有の表示バグに違いありませんが、それを回避する方法がfloatわかりzoomません。

4

2 に答える 2

3

消える要素を 1 レベル深く、別の子要素に移動することで、これを修正しました。子要素はフローティングされていますが、位置がないため、消える要素は依然として親要素に対して相対的に配置されています。なれ。

これは、要素が消える原因となったものです(実際のIDではありません):

<div id="parent" style="position: relative;">
  <div id="disappear" style="position: absolute; left: -8px; top: -17px;>This element disappears</div>
</div>

これが表示される理由です:

<div id="parent" style="position: relative;">
  <div id="child" style="float: left; width: 340px;">
    <div id="disappear" style="position: absolute; left: -8px; top: -17px;">Now this element appears</div>
  </div>
</div>

ただし、フローティング#parentしてwidth(持っているのと同じ2つのプロパティ#child)を指定しても機能しませんでした-別の子要素を使用する必要があります。まったく奇妙ですが、他の誰かが同じ問題に遭遇した場合に備えて、これを投稿すると思いました!

于 2012-07-30T01:32:43.637 に答える