☰

JavDB Dynamic Title Expander

Expands video title boxes to fit translated text without truncation.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

このスクリプトの質問や評価の投稿はこちら、通報はこちらへお寄せください
// ==UserScript==
// @name         JavDB Dynamic Title Expander
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  Expands video title boxes to fit translated text without truncation.
// @author       You
// @match        https://javdb.com/*
// @grant        none
// @license MIT
// ==/UserScript==

(function() {
    'use strict';

    // 1. Inject CSS to override truncation and fixed heights
    const style = document.createElement('style');
    style.textContent = `
        /* Remove the 2-line limit and allow wrapping */
        .video-item .title, .video-title, .grid-item .title {
            display: block !important;
            -webkit-line-clamp: unset !important;
            -webkit-box-orient: unset !important;
            overflow: visible !important;
            white-space: normal !important;
            height: auto !important;
            min-height: 2.8em !important; /* Keeps some uniformity */
            margin-bottom: 5px;
        }

        /* Adjust the parent container to grow with the title */
        .item, .video-item, .grid-item {
            height: auto !important;
            padding-bottom: 10px !important;
            display: flex !important;
            flex-direction: column !important;
        }

        /* Fix image/meta alignment inside the expanded box */
        .video-item .meta {
            margin-top: auto; /* Pushes ratings/dates to the bottom of the card */
        }
    `;
    document.head.appendChild(style);

    // 2. Optional: Logic to re-calculate if you are translating on-the-fly
    // If your script translates text after the page loads, the 'height: auto'
    // above will handle it automatically.
})();