我正在使用Fancybox打开iframe,除了ie之外,它在所有浏览器中都能正常工作。
当ie打开iframe时,它似乎错开了一瞬间,然后它将模态框向右移动了几个像素。
我遇到了一些人的帖子,但他们的答案没有帮助。
我也玩过CSS而没有成功。
之前有人遇到过这样的事吗?
干杯!
答案 0 :(得分:13)
希望我的解决方案对任何仍然面临同样问题的人有所帮助...... 我使用fancybox 1.x而我的DOCTYPE是“html”。
我发现实际上问题是在样式重置中使用box-sizing: border-box;
。所以我将content-box
和#fancybox-content
切换回#fancybox-wrap
,fancybox开始正常运行。
答案 1 :(得分:1)
Fancybox需要正确的DOCTYPE才能正常工作,尤其是IE。您的网站目前以怪癖模式运行。
您可以在此处找到有效的DOCTYPE参考资料。
由此
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
在您的特定情况下,您可以尝试更改此
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
答案 2 :(得分:0)
Fancybox需要一个合适的DOCTYPE
才能正常工作,尤其是IE。您的网站目前正在quirks mode
中运行。
您可以找到有效的DOCTYPE
参考here。
在您的特定情况下,您可以尝试更改此
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
由此
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
更新:我创建了一些简单的html
页面来重现IE的问题。
第一个使用与您网页中相同的DOCTYPE
以及相同的fancybox代码。 IE在怪癖模式下工作,因此fancybox在页面中表现得很奇怪:
http://picssel.com/playground/jquery/ieWrongDoctype_09feb12.html
第二个使用建议的DOCTYPE
作为解决方案。 IE在标准模式下工作,fancybox正常工作:
http://picssel.com/playground/jquery/ieGoodDoctype_09feb12.html
我的结论:使用正确的DOCTYPE