在铬加载页面之前防止白屏?

Ale*_*lex 48 google-chrome chromium

当页面没有立即加载时,Chromium 和我尝试过的所有其他浏览器在收到响应之前都会显示白屏:

在此处输入图片说明

即使chrome://settings/personal说它使用的是 GTK+ 主题 - 在我的例子中它是 Darklooks,它有一个黑色的背景:

在此处输入图片说明

有没有办法在 Chromium 中避免这种情况?或者,如果没有,是否有没有这个“问题”的浏览器?

小智 15

对于 Google Chrome 和 Chromium,您可能是问题 1373的受害者:浏览深色背景网站会导致页面之间出现令人眼花缭乱的白色闪烁

有一个技巧可以最大限度地减少,但不能完全消除评论 261 中描述的你的痛苦:

作为临时修复,我将自定义用户样式表设置为以黑色背景呈现页面,以便在它从网站接收样式信息之前将窗口呈现为黑色而不是白色,现在它改为闪烁黑色,这在直到形成永久性解决方案。

黑客包括Custom.css将以下行添加到您User StylesheetsDefault文件夹中。就我而言,路径是~/.config/chromium/Default/User Stylesheets.

html, body{
background-color:#000000; //This sets the background color to black
color:#0000FF; //This sets the text to blue, so you can read it on webpages set to use defaults; white is too hard on my eyes and if you dont put this it will be black on black
}
Run Code Online (Sandbox Code Playgroud)

至于 Firefox,我使用以下代码userChrome.css位于~/.mozilla/firefox/profile_name/chrome

@namespace xul url(http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul);

/*prevent white flash*/
tabbrowser tabpanels { background-color: #111 !important}
Run Code Online (Sandbox Code Playgroud)

如果该chrome文件夹不存在,请创建它。请注意,chromeuserChrome.css都区分大小写。

  • 通过在此处分叉源代码进行另一个黑客攻击 https://github.com/hbtlabs/chromium-white-flash-fix (4认同)
  • Chromium 解决方案在 2015 年对我不起作用,但 Firefox 解决方案主要适用。无法完全避免浏览器增量加载页面导致的闪烁。 (2认同)

Ale*_*lex 2

vasa1的解决方法很好,白色闪光消失了。但有些网站的背景变成了黑色,有点难看:

在此输入图像描述

所以我调整了 CSS 并最终得到:

html:not(:hover), body:not(:hover){
    background-color:#000000;
}
Run Code Online (Sandbox Code Playgroud)

这意味着当光标不在页面上时,背景设置为黑色 - 当您单击新选项卡按钮时,光标不在页面上,因此黑色背景将闪烁,而不是白色背景。当您将光标悬停在页面上(当您阅读该页面时)时,黑色背景就会被忘记,而会使用网站的背景:

在此输入图像描述 在此输入图像描述