临时解决方法

临时解决方法

我想将自定义 CSS 应用于 Chrome 中的页面,但是扩展已加载。

我已经熟悉这个解决方案:将自定义样式应用于 Chrome 内部页面

但我需要在页面加载时应用样式,在扩展程序启动之前。Chrome 以前Custom.css可以实现这一点,但现在已被删除。我正在寻找一种破解方法来实现这一点。

(我非常想要这个的原因是我的自定义样式会反转页面,显示黑底白字而不是白底黑字,但每次加载页面时,我的眼睛都会看到满屏的白色,直到扩展程序启动。我想防止这种情况发生并保护我的视力。)

如果您能向我展示如何设计新标签页以及从计算机本身加载的页面(如本地 HTML 文件),那么我将获得加分,这样我也可以反转它们。

答案1

临时解决方法

短期解决方法可能是将 Chrome 降级到早期版本。请注意:

  • Google 仅支持最新的稳定渠道版本。
  • Chrome 会尝试自动更新,您需要阻止这种情况。
  • 您将错过任何安全更新、错误修复或新功能。

从长远来看,您将不得不使用过时的旧浏览器。您缺少的单一功能可能会在此期间恢复,也可能不会。作为备用计划,尝试使用其他浏览器是值得的,即使您不打算立即切换。

文件信息

考虑到 Google 不会认可旧版 Chrome,因此您必须依赖能够提供独立离线安装程序的第三方。任何 Web 安装程序都会自动检索最新版本,因此完全无用。

31.x 分支中发布的最新稳定版本是31.0.1650.63。以下是官方安装程序的基本详细信息和哈希值:

File:    31.0.1650.63_chrome_installer.exe
Size:    33.7 MiB (35337056 bytes)
Version: 31.0.1650.63
---
CRC32:   14b5a4cf
MD5:     8d8e67e5a438e9906cc90c5ed4aa1ad7
SHA1:    a022ceeb5523145efbcf50c30426b8f2cec33716
SHA256:  2aaee6f9da598b483833e541ed8cc1671e3f034624834ad9c5ed1decedafa5a4

此外,该文件由 进行数字签名Google Inc,并由 进行会签Symantec Time Stamping Services Signer - G4。两个签名都必须有效。您可以通过打开文件属性对话框进行检查。

对于较新或较旧的 Chrome 版本,这里有一个可靠的(尽管非官方)页面,其中包含有关每个安装程序的详细信息:Chrome 安装程序信息

下载链接

您可以使用以下任何链接,或自行寻找其他来源。虽然实际文件名可能不同,但其他上面提供的详细信息必须完全匹配

确保使用防病毒软件扫描文件,然后将副本上传至病毒总数有足够的信心。如果可能的话,先在安全的环境中测试该程序。完成后,备份安装可执行文件。

阻止更新

  1. 确保所有与 Chrome 相关的进程都已完全关闭,然后打开提升的命令提示符. 键入或粘贴以下命令以通过注册表禁用自动更新功能:

    reg add "HKLM\SOFTWARE\Policies\Google\Update" /v "UpdateDefault" /t REG_DWORD /d 0 /f
    reg add "HKLM\SOFTWARE\Policies\Google\Update" /v "AutoUpdateCheckPeriodMinutes" /t REG_DWORD /d 0 /f
    reg add "HKLM\SOFTWARE\Policies\Google\Update" /v "DisableAutoUpdateChecksCheckboxValue" /t REG_DWORD /d 1 /f
    reg add "HKLM\SOFTWARE\Policies\Google\Update" /v "Update{8A69D345-D564-463C-AFF1-A69D9E530F96}" /t REG_DWORD /d 0 /f
    
  2. 禁用(但不是删除)所有 Google 更新计划任务和服务:

    for /r "%windir%\System32\Tasks" %A in ("GoogleUpdate*") do @schtasks /change /tn "%~nA" /disable
    for /f "delims=" %A in ('"reg query "HKLM\SYSTEM\CurrentControlSet\Services" | findstr /i /c:"gupdate" "') do @sc stop "%~nA" & @sc config "%~nA" start= disabled
    

    正如 @Synetech 所指出的,您应避免删除 Google 更新任务“因为 Chrome 会在您下次运行时重新创建它们;如果它们已经存在但被禁用,它将不会重新启用它们。”如果您将来想要启用它们,我无论如何都不建议删除它们。

  3. 阻止GoogleUpdate.exe应用程序运行:

    reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\GoogleUpdate.exe" /v "Debugger" /t REG_SZ /d "systray.exe" /f
    

    如果你对其具体工作原理感兴趣,请查看以下问题:如何阻止程序运行(Windows 7)

  4. chrome:plugins在 Chrome 地址栏中输入,然后禁用Google 更新插入。

恢复

如果您想再次启用更新,请按照以下步骤操作。

  1. 确保所有与 Chrome 相关的进程都已完全关闭,然后以管理员身份打开命令提示符。输入或粘贴以下命令:

    reg delete "HKLM\SOFTWARE\Policies\Google\Update" /f
    reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\GoogleUpdate.exe" /f
    for /r "%windir%\System32\Tasks" %A in ("GoogleUpdate*") do @schtasks /change /tn "%~nA" /enable
    for /f "delims=" %A in ('"reg query "HKLM\SYSTEM\CurrentControlSet\Services" | findstr /i /c:"gupdate" "') do @sc config "%~nA" start= demand
    
  2. chrome:plugins在 Chrome 地址栏中输入,然后启用Google 更新插入。

答案2

这是一个已知的错误:
问题 1373:浏览深色背景的网站会导致页面之间出现刺眼的白色闪烁
是一个非常非常长的线程,从 2008 年 9 月 4 日开始!

这个漏洞被“修复”了好几次,但这些修复要么没有效果,要么因为导致其他问题或效率低下而不得不撤回。许多其他漏洞问题都合并到了这个漏洞中,许多用户已经宣布放弃使用 Chrome,但这个漏洞尚未解决。

对该错误的分析似乎是,如果显示的页面不是以包含<body>背景颜色的 HTML 标记开头,并且渲染页面需要几百秒以上,则页面将显示为白色背景。例如,如果源网站太慢或页面太大或编写效率低下(例如,需要很长时间下载的大图像),则可能会发生这种情况。

本期的最后两条消息是:

2013年5月23日:

好的,看起来问题已经解决了。这个问题应该很快就会在 Canary 中得到解决,并在 29 版本中得到解决。如果您仍然发现该问题,请提交新的错误。

2013年6月5日:

问题 247003已合并到该问题中。

从那时起,这个错误似乎就被遗忘了——没有新的条目。

因此,尽管上一条消息乐观,但看来该漏洞仍然存在。在这么多人徒劳地寻找解决方案或解决方法之后,我相信唯一的解决方案就是在 Chrome 中修复该漏洞。

我唯一能给出的建议是继续敦促 Chrome 开发人员修复该错误。但五年多过去了,似乎出于某种原因,该解决方案很难实现。

相关内容