【问题标题】:problem with ie6 and dynamically-generated panelsie6 和动态生成的面板的问题
【发布时间】:2011-05-18 12:24:42
【问题描述】:

我在使用 ie6 和动态生成的组件时遇到问题。有一个带有滚动条的静态面板(主面板),我动态地将其他(较小的)面板放入主面板。这些较小的包含其他组件...接近重点,这里的屏幕截图正好说明了我的 ie6 问题。

http://www.turboimagehost.com/p/7333211/ie6.JPG.html

这就是它在 ie6 中的样子。 另一方面,这是页面在 ff 中的外观。这正是它计划的方式(与其他主要浏览器的外观相同)

http://www.turboimagehost.com/p/7333209/ff3a.JPG.html http://www.turboimagehost.com/p/7333210/ff3b.JPG.html

【问题讨论】:

  • 建议您提供能够重现该问题的最低限度的 html/js。
  • 没有 html/js... 源代码是 c#。无论如何,这是它的简化版本(希望它能让事情变得清楚) Panel video_panel = new Panel[s_count] int i = 0; //这里出现循环foreach(data.Tables[0].Rows中的DataRow行){jpg_panel[i] = new Panel(); main_panel.Controls.Add(video_panel[i]); video_panel[i].ID = "j_" + i.ToString(); video_panel[i].Style["position"] = "absolute"; video_panel[i].Style["top"] = Convert.ToString(i*300) + "px"; video_panel[i].Style["left"] = "0px"; video_panel[i].Width = 240; video_panel[i].Height = 300;我++; }

标签: asp.net internet-explorer-6 dynamically-generated


【解决方案1】:

根据您的评论,您正在为子 div 使用绝对定位,您没有为父级指定样式。但最有可能的是,您遇到了众所周知的 IE6 错误 - 请参阅 this article 了解问题和解决方案 - 简而言之,您需要为您的容器(父)div/面板使用相对位置。。 p>

另一方面,对于建议的布局,您不需要使用绝对定位。您可以使用边距来控制布局 - 请参阅 a sample fiddle out here

【讨论】:

  • 感谢有关 IE6 错误的文章。相对定位节省了时间。
猜你喜欢
  • 1970-01-01
  • 2021-03-10
  • 2012-09-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多