CSS IE7慢速覆盖

CSS IE7慢速覆盖,css,internet-explorer-7,overlay,Css,Internet Explorer 7,Overlay,当我按下按钮时,会出现一个覆盖图。在Firefox中,覆盖速度很快,没有什么特别之处。但在IE7中,覆盖速度非常慢。我想知道为什么 这是我的CSS: .DocOverlayShow { background: url("/Graphics/overlay bg.png"); top:0px; left:0px; width:100%; position:fixed; padding:10px; } .DocAddCommentBox {

当我按下按钮时,会出现一个覆盖图。在Firefox中,覆盖速度很快,没有什么特别之处。但在IE7中,覆盖速度非常慢。我想知道为什么

这是我的CSS:

.DocOverlayShow
{
    background: url("/Graphics/overlay bg.png");
    top:0px; 
    left:0px; 
    width:100%; 
    position:fixed; 
    padding:10px; 
}
.DocAddCommentBox
{
    color: #000;
    margin:0 auto;
    margin-top: 200px;
    width: 650px;
}
当我单击一个按钮时,覆盖被激活。IE中的一切都很好,但是叠加速度太慢了。你知道怎么回事吗

编辑: 当我使用不透明度和过滤器时,这个div上的所有内容都是透明的。这是我不想要的。在overlay div上,我有另一个div(DocAddCommentBox)。这个部门可能没有透明度。我怎样才能解决这个问题

编辑:解决方案:

.DocOverlayShow
{
    background-color: #0057C3;
    Opacity:0.5;
    filter: alpha(opacity=50); /*IE*/
    top:0px; 
    left:0px; 
    width:100%; 
    height: 100px;
    position:fixed; 
    padding:10px; 
    z-index: 1000;
}
.DocAddCommentBox
{
    background-color: #DBDBDB;
    color: #000;
    position: fixed;
    margin:0 auto;
    margin-top: 150px;
    width: 450px;
    z-index:2000;
}
在html中,我使用了:

<div class="DocOverlayShow"></div>
<div class="DocAddCommentBox">Content</div>

内容

您的overlay.png是否有alpha通道/透明度?如果是这样,请尝试不使用透明度。从记忆上看(渲染这些东西的速度非常慢)

我要做的是使用CSS来提高透明度

设置不透明度,如下所示:

Opacity:0.5;
不幸的是,IE不支持它,因此我们还必须使用自定义IE属性:

filter: alpha(opacity=50);

您的overlay.png是否具有alpha通道/透明度?如果是这样,请尝试不使用透明度。从记忆上看(渲染这些东西的速度非常慢)

我要做的是使用CSS来提高透明度

设置不透明度,如下所示:

Opacity:0.5;
不幸的是,IE不支持它,因此我们还必须使用自定义IE属性:

filter: alpha(opacity=50);

以下是我在项目中使用的覆盖CSS:

#siteol {
  position: absolute;
  z-index:10000;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: #000;
  opacity: 0.7;
}

<!--[if IE]>
/* style for IE */
<style type="text/css">
#siteol  {
  filter: alpha(opacity=70);
}
</style>
<![endif]-->
#siteol{
位置:绝对位置;
z指数:10000;
宽度:100%;
身高:100%;
左:0;
排名:0;
背景色:#000;
不透明度:0.7;
}

去掉PNG即可。

以下是我在项目中使用的覆盖CSS:

#siteol {
  position: absolute;
  z-index:10000;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background-color: #000;
  opacity: 0.7;
}

<!--[if IE]>
/* style for IE */
<style type="text/css">
#siteol  {
  filter: alpha(opacity=70);
}
</style>
<![endif]-->
#siteol{
位置:绝对位置;
z指数:10000;
宽度:100%;
身高:100%;
左:0;
排名:0;
背景色:#000;
不透明度:0.7;
}

只需去掉PNG即可。

您不需要不透明语法,只需将透明图像设置为大于1px或2px,最小20px即可。主要是,有背景的图像会重复,特别是那些有很多重复来填补空白的图像,它们会使IE7比其他图像慢得多。

你不需要不透明语法,你所需要做的就是使你的透明图像大于1px或2px,最小20px就可以了。主要是,有背景的图像会重复,特别是那些有很多重复来填充空白的图像,它们会使IE7比其他图像慢得多。

我遇到了完全相同的问题,下面的解决方案在不使用额外的不透明度属性的情况下工作得很好。它仍然需要IE使用过滤器,但我觉得更干净

background-color: rgba(244, 244, 244, 0.6);
filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#7ff4f4f4', EndColorStr='#7ff4f4f4');
下面是IE过滤器渐变技巧的一个很好的解释,以及在背景上不使用不透明度属性的好处


我遇到了完全相同的问题,下面的解决方案在不使用额外的不透明度属性的情况下运行良好。它仍然需要IE使用过滤器,但我觉得更干净

background-color: rgba(244, 244, 244, 0.6);
filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#7ff4f4f4', EndColorStr='#7ff4f4f4');
下面是IE过滤器渐变技巧的一个很好的解释,以及在背景上不使用不透明度属性的好处


pg约为3x3像素,透明度为是。如何创建一个与IE7配合良好的透明png?你不能。我要做的是使用CSS来提高透明度。像这样设置不透明度:“不透明度:0.5;”不幸的是,IE中不支持它,所以我们还必须使用一个自定义IE属性——“filter:alpha(不透明度=50);”我会试试的。每个网站都是这样做的吗?或者他们使用的是.gif或其他什么?他们使用的是背景色设置为黑色或类似颜色的div,这意味着他们不使用图片。pg大约是3x3像素,透明度是。如何创建一个与IE7配合良好的透明png?你不能。我要做的是使用CSS来提高透明度。像这样设置不透明度:“不透明度:0.5;”不幸的是,IE中不支持它,所以我们还必须使用一个自定义IE属性——“filter:alpha(不透明度=50);”我会试试的。每个网站都是这样做的吗?或者他们使用的是.gif之类的?他们使用的是背景色设置为黑色或类似颜色的div,这意味着他们不使用图片。