如何自动删除css规则“正文溢出:隐藏”

问题描述 投票:3回答:2

[在某些安装了adblock的情况下进入的网页的主体中添加了“ overflow:hidden” css样式,以防止网站滚动。

示例:

<html>
  <head>
      <title>Website</title>
  </head>
  <body style="overflow: hidden;">
    Some long article content
  </body>
</html>

我必须在Chrome Web检查器中手动进行编辑才能将其删除,这很烦人。

[我想知道我可以将此删除永久化,也可以通过chrome扩展程序或adblock规则进行检测以将其删除,也可以通过直接的javascript等进行检测。

更新:使用tampermonkey chrome扩展名,也许我可以实现我的目标。我执行了以下脚本,但没有结果(页面似乎重新加载或加载了一些JavaScript,但我无法正确删除隐藏的主体溢出):

// ==UserScript==
// @name         InvestingRemoveScrollBodyBlocker
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Remove body overflow hidden
// @author       Ángel Guzmán Maeso <[email protected]>
// @match        https://*.investing.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    setTimeout(function(){

        var bodyWeb = document.getElementsByTagName("BODY")[0];
        console.log(bodyWeb);
        bodyWeb.style.overflow = "visible !important";

    }, 4000);

})();
javascript css google-chrome-extension google-chrome-devtools adblock
2个回答
3
投票

尝试使用此脚本工具TamperMonkey

要覆盖溢出

body {
   overflow: visible !important;
}

将与TamperMonkey一起使用的脚本:

// ==UserScript==
// @name         InvestingRemoveScrollBodyBlocker
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Remove body overflow hidden
// @author       Ángel Guzmán Maeso <[email protected]>
// @match        https://*.investing.com/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    // Credits: https://stackoverflow.com/questions/51330252/how-to-remove-the-css-rule-body-overflowhidden-automatically
    document.body.style.cssText = "visible !important";
})();

0
投票

您可以添加带有uBlock Origin:style() operator过滤规则以覆盖此:

##html > body:style(overflow:visible !important;)
##html:style(overflow:visible !important;)
© www.soinside.com 2019 - 2024. All rights reserved.