【问题标题】:IE7 giving UL a margin even though I told it not toIE7 给 UL 一个利润,即使我告诉它不要
【发布时间】:2011-07-19 04:46:15
【问题描述】:

我有一个ul,它在普通浏览器甚至 IE8 中都能正常显示!但是,当我将 IE8 置于 IE7 模式时(这可能是问题吗?),我得到了左侧的布局(右侧的正常行为:

这是我的 CSS:

ul { 位置:相对; z指数:3; 列表样式:无; 边距:0px; 填充:0px; 背景:透明; 左边距:0px; }

我的问题是:我如何摆脱愚蠢的偏移量(我使用了margin-left -10px(或另一个负值),但这当然也会影响其他浏览器。感谢您的帮助:-)

【问题讨论】:

  • 顺便说一句。左边距:0px;应该不需要,因为你已经设置了 margin:0px
  • @BerggreenDK:我认为 IE 太笨了,看不到速记。虽然没有帮助。 @BalusC:具有讽刺意味的是,我提出的解决方案现在实际上使用了浮点数:-P
  • 我总是在打开 4-5 个浏览器的情况下构建 CSS:Google Chrome、Firefox、Safari,然后是 Internet Explorer(最新/最常见的版本)+ 我有运行辅助操作系统的 vmWare 工作站/播放器,所以我可以启动例如。 Internet Explorer 7 等用于特殊测试目的。我的经验是,您对 MSIE 使用的“hack”越少,该站点将来在任何方面的工作都会越好。到目前为止,我自己的公司网站已经在 3 个版本的 Internet Explorer 中幸存下来,并且布局没有崩溃。

标签: css internet-explorer-7


【解决方案1】:

我通常只使用“干净的标准 CSS”来实现跨浏览器兼容性。

您是否在 Google Chrome、Firefox 和 Safari 中进行了测试?

尝试在 UL 上设置“盒子模型”,使用 display:block;

【讨论】:

  • 其次,如果你一开始就“清理”所有的 HTML 标签,那么你就可以摆脱奇怪的边框、行高等。
  • 谢谢!我已将 CSS 更改为使用浮点数而不是 inline-block,现在效果很好。
  • display:inline-block 在 IE6/7 中根本不支持。
  • 我知道。我正在缩短display: inline-block; zoom: 1; *display: inline
  • 那些“技巧/黑客”通常迟早会给我带来问题,我或多或少会远离这些。除了快速修复之外,不能推荐它们。我认为没有长期解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-02
  • 1970-01-01
相关资源
最近更新 更多