0

这几天我一直在努力解决这个问题,我放弃了。

我有一个 div,其中包含一个 .hover 目标,以及一个在该目标悬停后显示的 div。该子 div 由一个跨度和一个段落组成,跨度绝对定位为部分位于该 div 之外。

在现代浏览器中,这一切都很好地淡入,但在 IE <8 中,跨度(红色背景)没有正确淡入,只显示父 div 内的部分,只有在动画完成后,其余部分才会出现在外面。

我尝试过使用不同的 jQuery 选择器,编写自定义淡入淡出函数来删除过滤器,将父元素绝对定位在屏幕外以试图强制浏览器不使用 DirectX,等等。

JSBin 显示问题(仅限 IE8 或更低版本):http: //jsbin.com/emegas/3/edit

HTML:

<div class="tooltip">
  <span class="pointer">hover here</span>
  <div class="tip">
    <span class="tipPointer"></span>
    <p>asdasdas.</p>
  </div>
</div>

jQuery:

$('.pointer').hover(function(){
    $(this).next('.tooltip .tip').stop(true, true).fadeIn(1000);
}, function(){
    $(this).next('.tooltip .tip').stop(true, true).hide();
});

如果可能的话,我怎样才能让跨度与父母同时淡入?

4

1 回答 1

0

在 IE7 和 IE8 中运行良好。我能想到的唯一问题是您的 IE8 版本存在一些溢出错误。尝试添加溢出:可见;到 CSS 中的两个元素。

于 2013-04-08T15:10:18.290 回答