1

我们有如下简单的 div。这里的问题是 div gpsDataDiv 和 map div inIE 之间存在差距。其次,gpsDataDiv 是具有动态表的字段,使用此方法 document.getElementById("gpsDataDiv").innerHTML = htmlString; 再次在 IE 中,表格就在下方,并且不会停在 400 像素处,因此不会像在 chrome 或 firefox 中那样生成滚动条。

 <body>
 <div id="left" style="width:220px;height:350px;float:left;background:white;">
      <div id="gpsDataDiv" style="overflow: auto; max-height: 400px;background:white;"></div>
</div>
 <div id="map" style="top:0px;left:220px;height:100%">Map goes here.
  </div>    
 </body>
4

2 回答 2

3

带有 id 的 div在样式map中没有position:absolute,这是您在单独的样式表中拥有的东西吗?

几个建议:

1.

float:left;与绝对定位的元素(?)混合。您需要确保容器(在这种情况下为主体)已overflow:hidden应用于它,或者使用clearfix。这将阻止容器崩溃,并可能导致页面下方出现问题。

2.

其次,您应该能够通过使用针对每个浏览器的单独样式表(尝试搜索特定样式表)或尝试我在 html 元素上使用类的方法来更改不同浏览器中的样式

<!--[if lt IE 7 ]> <html class="ie6" lang="en" xml:lang="en"> <![endif]-->
<!--[if IE 7 ]>    <html class="ie7" lang="en" xml:lang="en"> <![endif]-->
<!--[if IE 8 ]>    <html class="ie8" lang="en" xml:lang="en"> <![endif]-->
<!--[if IE 9 ]>    <html class="ie9" lang="en" xml:lang="en"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--><html class="" lang="en"> <!--<![endif]-->

3.

确保您的页面上有一个 doctype,尝试使用下面的 html 5 doctype。如果您不指定 doctype,则页面可以进入 quirks 模式。这绝对是你不想要的!

<!DOCTYPE html>

4.

尝试更改max-height: 400px;height: 400px开启id="gpsDataDiv"


如果这些都没有帮助你,你能把你的问题放在一起吗?它会帮助我为你调试它:)

于 2012-07-12T09:16:35.893 回答
1

我试图重现你的问题。如果我将 height: 400px 添加到 gpsDataDiv,它似乎在 IE 中正确显示。

于 2012-07-12T09:19:55.920 回答