javascript - 在 IE 中,如何修正动画后的移动

  显示原文与译文双语对照的内容
0 0

我刚刚做了一个文本动画( 淡入;动画( 顶部,不透明度) ),最后,文本约 5px 左右,然后返回原始位置。 这只在 IE 中发生;所有其他主要浏览器都正常运行。

知道为什么会发生,如何修复它? 我特别喜欢把IE7固定在特定的地方。

谢谢。

( PS,为了避免ClearType故障,我删除了过滤器属性。)

HTML

<div id="logomarca">
 <h1 id="marca">txt</h1>
 <p id="spec">txt</p>
</div>

CSS

div#logomarca{ 
position:absolute;
left:50%;
top:0%;
margin-top:-83px;
margin-left:-83px;
width:160px;
height:45px;
 }
p#spec{position:absolute; }

Javascript

 $(document).ready(function(){
 $("div#logomarca").show();
 $("p#spec").fadeTo(0, 0.00,
 function() { if($.browser.msie) { this.style.removeAttribute('filter'); }; } 
 );//hide() is not working with fadeIn
 if($.browser.msie) { 
 $("p#spec").css({ 
 "margin-top":"8px", 
 "margin-left":"-165px", 
 display:"none" 
 }); 
 }; 
 $("div#logomarca").animate({
 top:"+=50%",
 opacity: 1.00
 }, 2500, 
 function() { if($.browser.msie) { this.style.removeAttribute('filter'); }; } 
 );
 $(this).delay(3200,function(){ 
 if($.browser.msie) { $("p#spec").show(); };
$("p#spec").fadeTo(0, 0.00 ); 
 $("p#spec").animate({
 opacity: 1.00,
 top:"+=20" 
 }, 2500,
 function() { if($.browser.msie) { 
 this.style.removeAttribute('filter'); 
 }; } 
 );
 $(this).delay(3500,function(){ 
 $("p#spec").fadeTo(800, 0.0);
 $(this).delay(650,function(){ 
 $("h1#marca").fadeTo(1500, 0.0);
 });
 });
 });
 });
时间:原作者:8个回答

0 0

如果能发布一个最小化的工作示例,那么我们就可以查看代码。

我最好的猜测是,你需要用块级元素( div 或者 p ) 包装元素,并将该元素'position: relative;'提供给 IE 。

原作者:
...