为什么IE7中的内容不包含浮动图像?
请参阅: http : //hostingcouponsclub.com/codero-coupons 。
当我点击more<<
(红色轮询部分上方)为什么在IE7下内容不会环绕图像?
在Firefox和Chrome下,没关系。
在IE7中单击红色的more<<
文本时,如何使内容环绕图像?
这是因为当jQuery动画(你的显示/隐藏function使用“慢”)时,它会导致动画元素“获得布局”,这就是导致文本不能换行: 参考
例如,你的pr_content
div使用内联样式登陆这样的东西(在IE7中,它在IE8中有所不同)
有各种修复,但也有各种错误,我尝试了几个不同的修复,如删除filter,但也有一个删除style attribute
的bug,我想可能删除style attribute
并使用.css()
来应用display:block
或display: none;
YMMV可能有效,但没有快乐
这是你现有的jQuery :(来自idccoupon / scripts.js)
$('.pr_content').hide(); $('.moreteaser').click(function() { $('.pr_teaser').hide(); $('.pr_content').toggle("slow"); $(".pr_content").attr("zoom",""); $('.moreteaser, .lessteaser').toggle(); }); $('.lessteaser').click(function() { $('.pr_content').toggle("slow"); $('.pr_teaser').show(); $('.moreteaser, .lessteaser').toggle(); });
注意: attr("zoom", "");
我知道这是一个推荐的解决这个问题的方法,就我所知,我不会删除zoom
属性..这也是我发现尝试删除其他属性的原因。
通过删除IE的“慢”命令,我得到了一半的工作(即IE没有增强),只是意味着他们得到一个即时显示/隐藏而不是“平滑”一个..这或只是让IE用户得到解包的内容就像他们刚才可能是最简单的解决方案?
无论如何这里是我想要尝试的代码:
$('.pr_content, .lessteaser').hide(); $('.moreteaser, .lessteaser').click (function() { if (jQuery.browser.msie) { $('.pr_content, .prteaser, .moreteaser, .lessteaser').toggle(); } else { $('.pr_content, .prteaser, .moreteaser, .lessteaser').toggle("slow"); } });
这可能是因为
浮动而
(这是前者的兄弟)不是。 尝试将#provider-top
放在#node-body
,看看是否能修复它。