CSS适用于chrome,但不适用于firefox

CSS适用于chrome,但不适用于firefox,css,Css,我下面的CSS代码在Chrome中运行良好,但在Firefox中不起作用。我想这可能只是句法上的差异,但我不知道发生了什么。我下面的CSS代码有错误吗 #framed_source { background-color: white; display: block; height: 97%; width: 100%; padding: 0px; } #grey_cover { position: fixed; height: 100%;

我下面的CSS代码在Chrome中运行良好,但在Firefox中不起作用。我想这可能只是句法上的差异,但我不知道发生了什么。我下面的CSS代码有错误吗

#framed_source {
    background-color: white;
    display: block;
    height: 97%;
    width: 100%;
    padding: 0px;
}

#grey_cover {
    position: fixed;
    height: 100%;
    width: 100%;
    padding: 0px;
    margin: 0px;
    top: 0px;
    left: 0px;
    background-color: #3F3F3F;
    /* Transparency is applied through the transparent class */
}

#popup_window {
    background: #D0E9F3;
    visibility: visible;
    border: 1px solid #666;
    padding-top:20px;
    padding-bottom:20px;
    padding-right:20px;
    padding-left:20px;
}

.with_frame {
    position: absolute;
    width: 600px;
}

#popup_window_content {
    overflow: auto;
    color: #1F313E;
    font-family: Calibri;
    max-height: 200px;
}

.transparent {
        /* Required for IE 5, 6, 7 */
        /* ...or something to trigger hasLayout, like zoom: 1; */
        width: 100%; 

        /* Theoretically for IE 8 & 9 (more valid) */
        /* ...but not required as filter works too */
        /* should come BEFORE filter */
        -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";

        /* This works in IE 8 & 9 too */
        /* ... but also 5, 6, 7 */
        filter: alpha(opacity=50);

        /* Older than Firefox 0.9 */
        -moz-opacity:0.5;

        /* Safari 1.x (pre WebKit!) */
        -khtml-opacity: 0.5;

        /* Modern!
        /* Firefox 0.9+, Safari 2?, Chrome any?
        /* Opera 9+, IE 9+ */
        opacity: 0.5;
}
基本上,我有一个弹出窗口,显示在iframe的顶部。在Chrome中,它可以正确地执行此操作;在FF中,它在iframe下显示弹出窗口。有什么想法吗?我认为这与绝对/相对定位有关


我还创建了一个。我正在尝试使显示在框架下方的蓝色框显示在框架前面的中心。

要使某个内容显示在另一个内容之上,您需要设置z索引值,我认为还需要设置位置

对于要位于顶部的元素,按如下方式设置z索引值:

#idOfTopElement {
    z-index: 1;
}
#idOfNextElement {
    z-index: 2;
}

您可能需要添加
position:relative
位置:绝对,但我不能确定。

因此,最终这就是错误所在

  • html结构中的
    弹出窗口
    上方有
    ,不知怎么搞砸了
    弹出窗口
    定位
  • 由于
    html
    body
    只是挂在那里,它们没有一直延伸到底部,并且限制了iframe的进一步移动,因为它的高度设置为百分比。。(这是我确实记得在某个时候修复过的东西..但当我检查它时已经过了午夜,所以谁知道它在哪里消失了:D)

  • 如果您不完全反对javascript/jQuery解决方案,这里有一个可能有效的选项。我选择在加载时进行顶部和左侧调整,但当您调用创建弹出窗口时,这样做更有意义:


    它在Chrome、FF、IE和IE怪癖模式下工作。

    我不知道为什么,但当我升级到Firefox 5时,问题自行解决了。无论如何,谢谢大家花了这么多时间

    这可能是zIndex的问题吗?我看不出您在任何时候都在指定它……我更喜欢回答问题,在那里我可以自己检查问题,或者在哪里很容易隐藏代码。另外,我也不知道问题出在哪里。旁注:在某些地方,您使用的是
    背景色:
    ,而在其他地方,您使用的是
    背景色:
    。我会坚持使用后者。我只会在电子邮件中使用背景色,否则就没有理由使用它。加上
    背景
    较短@Kvass我有点诵读困难,加上我不太了解你的id和类,你介意指出哪一个是给你带来麻烦的元素吗?@Kvass我真的无法将这些点与代码联系起来,但我希望这个小例子能有所帮助。(目前的情况是,它应该可以在所有主流浏览器和ie6中使用。)不幸的是,尽管它似乎可以在JSFIDLE中使用,但这并没有解决FireFox中的问题——iframe仍然在顶部被挤压,虽然它应该跨越页面的整个长度,但这是一张它如何显示的图片:将该图片与所需的显示进行比较:见鬼。。我想我是在firefox上做的。。我明天要去看看。我真的很感谢你的帮助。因为某种原因,这个问题在ff5中自行解决了,但无论如何,我对你花在帮助我上的时间投了赞成票