我刚刚创建了一个阿拉伯语版本的网站,并注意到Chrome有时会显示一个完全空白的页面,直到调整窗口大小,然后一切都立即可见。
阿拉伯语是一种RTL语言,因此<html>
标记添加了dir="rtl" lang="ar"
。这是它与英文网站的唯一区别。
This is the site。您可能需要多次单击徽标才能看到它显示为空白。
答案 0 :(得分:6)
我也注意到了这个问题,我用英语和阿拉伯语搜索了互联网,但无法找到问题的原因。我找到了一个解决方法来修复它;在rtl指导的网页中使用以下jQuery脚本:
//Chrome RTL UI Issue Fix
$(document).ready(function(){
$(window).load(function() {
$( "body" ).animate({
scrollTop: 1
});
});
});
所有这一切都是在加载了所有页面元素后立即仅向1px
滚动页面。如果需要,您可以添加一个将其滚动回来的代码。
答案 1 :(得分:3)
我解决了这个问题,我想与你分享。我认为这个问题仅适用于mac os上的gc。 如何解决?它真的很容易。 将你的身体隐藏在你的css中,然后在页面加载时显示它,并且每件事都能正常工作。
/*Add this to your css to hide body */
body {
display: none;
}
<!-- Add to your html to js file to show your body again -->
$(window).load(function() {
// When the page has loaded
$("body").show()
});
答案 2 :(得分:1)
页面链接不起作用。该页面是否在未来主义网站上提供?
我下载了futurism.com页面,并在html标记中添加了dir="rtl" lang="ar"
。我已经重新加载了50次页面。我无法重现这个问题。
我的页面副本在带有Multiviews的Apache上运行。
页面加载没有问题。
我还创建了另一个带有Unicode阿拉伯字母的页面。它从右到左加载并显示阿拉伯语,没有问题。
答案 3 :(得分:1)
我遇到了同样的问题。
请勿对body
或html
标记应用方向。
<html>
<head>
<style>
.rtl {
direction: rtl;
}
</style>
</head>
<body>
<div class="rtl">
<!-- Your Codes Here ... -->
</div>
</body>
</html>
答案 4 :(得分:1)
Wordpress在使用RTL时变得非常烦人,您需要调整大小或滚动以显示内容。我认为它只发生在MacOS上。
我注意到有些网站没有这个问题,所以比较html我注意到工作网站在<html>
中有很多类,如:js flexbox flexboxlegacy canvas canvastext webgl no-touch geolocation ...
由modernizr.js(v2.8.3)
我将此添加到我的页眉,并且空白页问题消失了:
<script src="/js/modernizr.js"></script>
我不确定发生了什么,但可能会给出一些起点来找出问题的真正原因。
答案 5 :(得分:1)
我遇到了类似的问题,但我的网站显示正常,直到在Android手机上手动刷新,之后页面将变为空白。此行为也可以在Chrome和Opera上的开发人员工具中重现(两者都使用Blink引擎)。
首先,我将一个固定的定位规则应用于身体,
body { position: fixed; }
然后,我使用jQuery恢复了页面加载的定位,
jQuery(window).load(function() {
jQuery('body').css('position','static');
});
答案 6 :(得分:0)
我的Wordpress有这个问题,我通过添加这个javascript代码来修复它
window.scrollTo(0, 1);
window.scrollTo(0, 0);