【问题标题】:Why is ie7 ignoring the left-margin on my first list item (only)?为什么 ie7 忽略我的第一个列表项的左边距(仅)?
【发布时间】:2011-05-17 19:23:25
【问题描述】:

http://blog.helpcurenow.org/test/mockups/mar2010/lp.html

在上面的登录页面中,我有一个包含四个捐赠按钮的报价框。前三个以单独的 id 为目标,并给定 13px 的左边距。

除了 ie7 之外,我正在查看的每个浏览器都运行良好。出于某种原因,ie7 忽略了第一个列表项上 13px 的左边距,并且只在那个列表项上。

奇怪的是,当我打开ie的开发工具(实际上不是在ie7中查看,而是在ie7模式下使用ie8)并选择元素时,它显示13px的边距在那里,并且没有被划掉。浏览器似乎忽略了它!

这里有什么我应该知道的 ie7 怪癖还是我错过了我应该添加的 CSS 声明?有什么想法吗??

谢谢!

【问题讨论】:

  • 我认为他的意思是真正的 Internet Explorer 7 的行为与在兼容性/IE7 模式下运行的 IE8 完全不同,这可能是真的,但与您的问题完全无关。您的问题显示在 IE8 的兼容性视图中。我花了几分钟调查,我也无法解释为什么会这样。不过,我也许可以提出一个解决方案。待命。

标签: css internet-explorer-7 margin listitem


【解决方案1】:

尝试将容纳lis 的ul 上的填充设置为10px 13px,然后从lis 中删除margin-left

【讨论】:

    【解决方案2】:

    只要清除错误的边框、行高和盒子模型,你就安全了。

    在 CSS 的顶部第一行,您只需添加:

    html,body,h1,h2,h3,h4,h5,h6,p,ul,li,img {border:none;padding:0;margin:0; /* etc. like font-size:10px;line-height:10px; */}
    

    然后您可以在之后为每个项目设置“想要的”值: 更多你可以设置

    display:block;
    

    在您的元素上,它们将使用相同的盒子模型。 IE6/IE7 不理解 inline-block 这是我认为某些元素的默认设置。

    【讨论】:

      猜你喜欢
      • 2016-04-07
      • 2020-09-22
      • 1970-01-01
      • 2017-02-16
      • 2017-11-07
      • 2012-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多