【问题标题】:CSS changes unexpectedly when I open IE Developer Tools打开 IE 开发人员工具时 CSS 意外更改
【发布时间】:2013-03-06 17:44:30
【问题描述】:

我目前正在 IE8 上测试一个站点(在虚拟机上运行)。

网站在 :before 和 :after 元素中使用了一些背景图片,它们位于媒体查询中:

@media (min-width: 980px) {

    .box:after {
        ...
        background: url('../images/assets/home-create-background.png') bottom right no-repeat;
        ...
    }
}

我使用respond.js 为IE8 上的媒体查询提供支持。 页面加载后立即应用媒体查询中的规则(即:respond.js 实际工作)。但是,不会显示此图像。

有趣的是:如果我打开 IE 开发者工具(例如按 F12),图像会突然显示出来。

有人遇到过类似的事情吗? 你们有什么想法或探索方向吗?


编辑: 我终于能够解决这个问题,将内容添加到 :after 伪元素(我已经应用了这个规则,但不在媒体查询中,并且由于某种原因,它没有应用在 IE 上)

    .box:after {
        ...
        background: url('../images/assets/home-create-background.png') bottom right no-repeat;
        content: " ";
        ...
    }

无论如何,我相信当我打开开发工具时知道为什么布局会发生变化是很有趣的......

【问题讨论】:

  • 能否在您的问题中添加一个小测试用例?
  • 这个问题我以前见过。
  • 我已经在 J​​avaScript 中注意到了这一点,所以看到它也出现在 CSS 中我并不完全感到惊讶。非网络人士真的不知道 IE 多年来给我们带来了多大的痛苦。

标签: css internet-explorer internet-explorer-8 cross-browser ie-developer-tools


【解决方案1】:

可以确定 IE 的几个痛点,因此值得检查以下内容:

  1. 任何console.log() 语句都会强制 IE 在显示开发人员工具之前不呈现任何内容。
  2. 当您打开 IE 开发工具时,默认情况下它处于与您习惯的默认视图不同的兼容模式。

【讨论】:

  • +1 任何 console.log() 语句都会强制 IE 在显示开发工具之前不呈现任何内容
  • 1:这似乎不是我的问题(我尝试删除所有 console.logs)。但是,知道这一点非常有趣。 2:不,我在正常模式下运行(IE8),但是,另一个好点!
猜你喜欢
  • 2014-02-08
  • 1970-01-01
  • 2018-10-02
  • 2011-12-11
  • 1970-01-01
  • 2015-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多