Better Styling

A personal styling adjustment for the ScriptBlox website.

2025/11/08のページです。最新版はこちら

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

You will need to install an extension such as Tampermonkey to install this script.

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
// ==UserScript==
// @name        Better Styling
// @namespace   Violentmonkey Scripts
// @match       *://*.scriptblox.com/*
// @icon        https://www.google.com/s2/favicons?sz=64&domain=scriptblox.com
// @grant       GM_addStyle
// @version     1.0.1
// @author      darraghd493
// @description A personal styling adjustment for the ScriptBlox website.
// @license     MIT
// ==/UserScript==

(function() {
    'use strict';

    GM_addStyle(`
        /* fix: no header padding - looks off still */
        header {
          padding-top: 40px;
          padding-bottom: 40px;
        }

        /* fix: no content padding */
        #__nuxt > div.flex.flex-col.transition-imp {
          padding-top: 24px;
        }

        /* qol: input */
        input {
          margin-bottom: 4px;
          color: #ccc;
        }

        /* qol: emphasised buttons */
        button {
          transition: transform 0.2s ease-out;
        }

        button:hover {
          transform: scale(103%);
        }

        button:active {
          transform: scale(97%);
        }
    `);

    // remove empty advert blocks (leftover from adblocker - uBlock Origin)
    function removeAds() {
        document.querySelectorAll('.adsbygoogle').forEach(el => {
            const grandParent = el.parentElement?.parentElement;
            if (!grandParent) return;

            // ensure the holder only contains the ad
            const nonAdChildren = Array.from(grandParent.children).filter(child => {
                return !child.classList.contains('adsbygoogle') && child.offsetParent !== null;
            });

            if (nonAdChildren.length === 0 ||
                (nonAdChildren.length === 1 && nonAdChildren[0].contains(el))) {
                grandParent.style.display = 'none';
            }
        });
    }

    removeAds();

    const observer = new MutationObserver(removeAds);
    observer.observe(document.body, { childList: true, subtree: true });
})();