代码之家  ›  专栏  ›  技术社区  ›  Jean Azzopardi

Internet Explorer 8和6中的jquery图像大小调整错误

  •  0
  • Jean Azzopardi  · 技术社区  · 17 年前

    我使用一些jquery技术设计了一个网站。我的问题是,在某些随机情况下,Internet Explorer 8和6可以使图像看起来比它们应该的小。我没有查过探险家7号,但它可能也在那里…请注意,调整页面大小可能更容易导致这些问题,事实上,客户机在1024x768分辨率监视器上发现了该问题。

    我把图像放在一个分区中,并在单击一个URL时用jquery切换它,以获得动画效果。它在Firefox中100%运行良好,但在Explorer中看起来很奇怪。

    它的外观: How it should look

    结果是什么样子的: What it ends up looking like

    jquery代码如下:

    <script type="text/javascript">
    
        $(document).ready(function()
            {
                $('#header').supersleight({shim: 'images/x.gif'}); 
                $('div[class^=images]').hide();
    
                $('a[class=images-importers]').click(function() {
                            $('div[class=images-importers]').toggle(1000);
                            return false;
                });
    
                $('a[class=images-suppliers]').click(function() {
                    $('div[class=images-suppliers]').toggle(1000);
                    return false;
                });
    
            });
    </script>
    

    相关部分的HTML也如下:

        <div>
                  <p>
                    <a href="#" class="images-importers">We are the sole importers of the leading aquatic
                    products in Malta.</a>
                  </p>
                  <div class="images-importers">
                    <div class="imgcontainer-small">
                      <a href="..."><img src="..."
                      alt="..." class="glossy" /></a>
                    </div>
                    <div class="imgcontainer-small">
                      <a href=".../"><img src="..." alt=
                      "..." class="glossy" /></a>
                    </div>
                    <div class="imgcontainer-small">
                      <a href="..."><img src="..." alt=
                      "..." class="glossy" /></a>
                    </div>
    
                    </div>
      </div>
    

    我用于图像的CSS:

    .imgcontainer-small{
        text-align      : left;     
        padding         : 10px;
    

    }

    谢谢你的帮助!

    顺便说一句,这个网站是 here

    2 回复  |  直到 11 年前
        1
  •  2
  •   Jean Azzopardi    17 年前

    我想这是我正在使用的“光泽”脚本。当我在IE浏览器中禁用它时,这个bug就不再出现了。

        2
  •  0
  •   Bryan Migliorisi    17 年前

    这不是jquery或ie的问题,而是您正在使用的PNG处理库(supersleight)的问题。

    实际上,这可能是超Leight在IE中对PNG应用透明度的方法。

    虽然它们确实有效(大多数时间),但这些方法对性能非常不利。确保你绝对需要透明的PNG。通常还有其他方法可以解决这个问题,包括为使用gifs或其他图像格式的IE浏览器使用单独的样式表。