MediaWiki:Common.css:修订间差异

来自神国反恶俗
跳到导航跳到搜索
无编辑摘要
toc-style
 
(未显示同一用户的18个中间版本)
第1行: 第1行:
/* 这里的任何JavaScript将为所有用户在每次页面加载时加载。 */
/* 神国维基顶部工具栏 */
( function () {
#sg-topbar.sg-sticky-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 7px 16px;
    background: #ffffff;
    border-bottom: 1px solid #a7d7f9;
    box-shadow: 0 1px 5px rgba(0,0,0,.12);
    font-size: 14px;
    line-height: 1.5;
}
#sg-topbar .sg-bar-left,
#sg-topbar .sg-bar-right {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
#sg-topbar a {
    color: #0645ad;
    text-decoration: none;
    white-space: nowrap;
}
#sg-topbar a:hover { text-decoration: underline; }
body.sg-sticky-on { padding-top: 48px; }


    function moveTOC() {
/* 顶部工具栏高度变量,修复左栏/正文与顶栏之间的缝 */
        var toc = document.getElementById( "toc" );
:root { --sg-topbar-height: 37px; }
        if ( !toc ) {
body.sg-sticky-on { padding-top: var(--sg-topbar-height) !important; }
            toc = document.querySelector( ".mw-table-of-contents-container" );
        }
        var sidebar = document.getElementById( "column-one" );
        if ( !toc || !sidebar ) {
            return;
        }
        if ( document.getElementById( "p-toc" ) ) {
            return;
        }
        var box = document.createElement( "div" );
        box.className = "portlet";
        box.id = "p-toc";
        var title = document.createElement( "h3" );
        title.textContent = "目录";
        var inner = document.createElement( "div" );
        inner.className = "pBody";
        inner.appendChild( toc );
        box.appendChild( title );
        box.appendChild( inner );
        sidebar.appendChild( box );
    }


     function pickLinks( portlet ) {
/* 左侧栏固定跟随 + 纵向滚动条 */
        var out = [];
#column-one {
        if ( !portlet ) {
    position: fixed !important;
            return out;
     top: var(--sg-topbar-height, 37px) !important;
        }
    bottom: 0 !important;
        var links = portlet.querySelectorAll( "ul a" );
    left: 0 !important;
        for ( var i = 0; i < links.length; i++ ) {
    height: auto !important;
            out.push( links[ i ] );
    max-height: calc(100vh - var(--sg-topbar-height, 37px)) !important;
        }
    overflow-y: scroll !important;
        return out;
    overflow-x: hidden !important;
    }
    z-index: 9000;
    background: #ffffff;
    box-sizing: border-box;
    padding-bottom: 70px !important;
    scrollbar-width: thin;
    scrollbar-color: #a7d7f9 #f0f4f8;
}
#column-one::-webkit-scrollbar { width: 7px; }
#column-one::-webkit-scrollbar-track { background: #f0f4f8; }
#column-one::-webkit-scrollbar-thumb { background: #a7d7f9; border-radius: 4px; }
#column-one::-webkit-scrollbar-thumb:hover { background: #7cb8e8; }


     function makeSticky() {
/* 左下角页脚图片:固定在左栏上方,避免被固定侧栏盖住 */
        var old = document.getElementById( "sg-topbar" );
#f-copyrightico {
        if ( old ) {
     position: fixed !important;
            old.parentNode.removeChild( old );
    left: 8px !important;
        }
    bottom: 8px !important;
    z-index: 9500 !important;
    background: #ffffff;
    padding: 4px;
    border-radius: 4px;
    line-height: 0;
}


        var leftLinks = pickLinks( document.getElementById( "p-cactions" ) );
@media (max-width: 720px) {
        var rightLinks = pickLinks( document.getElementById( "p-personal" ) );
    #column-one {
 
         position: static !important;
         if ( leftLinks.length === 0 && rightLinks.length === 0 ) {
         top: auto !important;
            return;
         bottom: auto !important;
         }
         height: auto !important;
 
         max-height: none !important;
         var bar = document.createElement( "div" );
         overflow: visible !important;
         bar.id = "sg-topbar";
         padding-bottom: 18px !important;
         bar.className = "sg-sticky-bar";
    }
 
    #f-copyrightico {
         var left = document.createElement( "div" );
         position: static !important;
         left.className = "sg-bar-left";
         left: auto !important;
        for ( var i = 0; i < leftLinks.length; i++ ) {
         bottom: auto !important;
            var a = document.createElement( "a" );
         padding: 0;
            a.href = leftLinks[ i ].href;
         background: transparent;
            a.textContent = leftLinks[ i ].textContent;
            left.appendChild( a );
        }
 
        var right = document.createElement( "div" );
        right.className = "sg-bar-right";
         for ( var j = 0; j < rightLinks.length; j++ ) {
            var b = document.createElement( "a" );
            b.href = rightLinks[ j ].href;
            b.textContent = rightLinks[ j ].textContent;
            right.appendChild( b );
         }
 
        bar.appendChild( left );
        bar.appendChild( right );
         document.body.appendChild( bar );
 
         var personal = document.getElementById( "p-personal" );
        var cactions = document.getElementById( "p-cactions" );
        if ( personal ) {
            personal.style.visibility = "hidden";
        }
        if ( cactions ) {
            cactions.style.visibility = "hidden";
         }
 
        document.body.className += " sg-sticky-on";
     }
     }
}


     function run() {
/* 页脚左侧图片恢复自然位置,与右侧 Powered by MediaWiki 对称 */
        moveTOC();
#f-copyrightico {
        makeSticky();
    display: block !important;
     }
    visibility: visible !important;
    position: relative !important;
    float: left !important;
     left: auto !important;
    bottom: auto !important;
    margin: 0 8px !important;
    padding: 0 !important;
    background: transparent !important;
    z-index: auto !important;
    line-height: normal !important;
}
/* 页脚左侧图片避开固定左栏,向右对齐 */
#f-copyrightico {
    margin-left: calc(12.2em + 32px) !important;
    margin-right: 8px !important;
}
@media (max-width: 720px) {
    #f-copyrightico { margin-left: 8px !important; }
}
/* 页脚左侧图片与右侧 MediaWiki 图标垂直对齐 */
#f-copyrightico {
     top: 3px !important;
}
/* 目录由 Common.js 插入到导航与搜索之间,保持侧栏原有顺序 */
#column-one {
    display: block !important;
}


     if ( document.readyState === "loading" ) {
/* 目录常显:去掉 TOC 自带的“[隐藏]”开关 */
        document.addEventListener( "DOMContentLoaded", run );
#p-toc #toc .toctitle {
    } else {
     display: none !important;
        run();
}
    }
#p-toc #toc .toctogglecheckbox {
    display: none !important;
}
#p-toc #toc .toctogglecheckbox:checked ~ ul {
    display: block !important;
}


}() );
/* 让目录与左栏其它 portlet 的边框、缩进和字号一致 */
#p-toc #toc {
    display: block !important;
    margin: 0 !important;
    padding: 0 0 4px 0 !important;
    border: 0 !important;
    background: transparent !important;
    font-size: 100% !important;
    line-height: 1.5 !important;
}
#p-toc #toc ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
#p-toc #toc li {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5 !important;
}
#p-toc #toc .tocnumber {
    color: #202122 !important;
    padding-right: 0.25em;
}
#p-toc #toc .toctext {
    color: #0645ad;
}

2026年10月31日 (六) 01:31的最新版本

/* 神国维基顶部工具栏 */
#sg-topbar.sg-sticky-bar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 7px 16px;
    background: #ffffff;
    border-bottom: 1px solid #a7d7f9;
    box-shadow: 0 1px 5px rgba(0,0,0,.12);
    font-size: 14px;
    line-height: 1.5;
}
#sg-topbar .sg-bar-left,
#sg-topbar .sg-bar-right {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}
#sg-topbar a {
    color: #0645ad;
    text-decoration: none;
    white-space: nowrap;
}
#sg-topbar a:hover { text-decoration: underline; }
body.sg-sticky-on { padding-top: 48px; }

/* 顶部工具栏高度变量,修复左栏/正文与顶栏之间的缝 */
:root { --sg-topbar-height: 37px; }
body.sg-sticky-on { padding-top: var(--sg-topbar-height) !important; }

/* 左侧栏固定跟随 + 纵向滚动条 */
#column-one {
    position: fixed !important;
    top: var(--sg-topbar-height, 37px) !important;
    bottom: 0 !important;
    left: 0 !important;
    height: auto !important;
    max-height: calc(100vh - var(--sg-topbar-height, 37px)) !important;
    overflow-y: scroll !important;
    overflow-x: hidden !important;
    z-index: 9000;
    background: #ffffff;
    box-sizing: border-box;
    padding-bottom: 70px !important;
    scrollbar-width: thin;
    scrollbar-color: #a7d7f9 #f0f4f8;
}
#column-one::-webkit-scrollbar { width: 7px; }
#column-one::-webkit-scrollbar-track { background: #f0f4f8; }
#column-one::-webkit-scrollbar-thumb { background: #a7d7f9; border-radius: 4px; }
#column-one::-webkit-scrollbar-thumb:hover { background: #7cb8e8; }

/* 左下角页脚图片:固定在左栏上方,避免被固定侧栏盖住 */
#f-copyrightico {
    position: fixed !important;
    left: 8px !important;
    bottom: 8px !important;
    z-index: 9500 !important;
    background: #ffffff;
    padding: 4px;
    border-radius: 4px;
    line-height: 0;
}

@media (max-width: 720px) {
    #column-one {
        position: static !important;
        top: auto !important;
        bottom: auto !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding-bottom: 18px !important;
    }
    #f-copyrightico {
        position: static !important;
        left: auto !important;
        bottom: auto !important;
        padding: 0;
        background: transparent;
    }
}

/* 页脚左侧图片恢复自然位置,与右侧 Powered by MediaWiki 对称 */
#f-copyrightico {
    display: block !important;
    visibility: visible !important;
    position: relative !important;
    float: left !important;
    left: auto !important;
    bottom: auto !important;
    margin: 0 8px !important;
    padding: 0 !important;
    background: transparent !important;
    z-index: auto !important;
    line-height: normal !important;
}
/* 页脚左侧图片避开固定左栏,向右对齐 */
#f-copyrightico {
    margin-left: calc(12.2em + 32px) !important;
    margin-right: 8px !important;
}
@media (max-width: 720px) {
    #f-copyrightico { margin-left: 8px !important; }
}
/* 页脚左侧图片与右侧 MediaWiki 图标垂直对齐 */
#f-copyrightico {
    top: 3px !important;
}
/* 目录由 Common.js 插入到导航与搜索之间,保持侧栏原有顺序 */
#column-one {
    display: block !important;
}

/* 目录常显:去掉 TOC 自带的“[隐藏]”开关 */
#p-toc #toc .toctitle {
    display: none !important;
}
#p-toc #toc .toctogglecheckbox {
    display: none !important;
}
#p-toc #toc .toctogglecheckbox:checked ~ ul {
    display: block !important;
}

/* 让目录与左栏其它 portlet 的边框、缩进和字号一致 */
#p-toc #toc {
    display: block !important;
    margin: 0 !important;
    padding: 0 0 4px 0 !important;
    border: 0 !important;
    background: transparent !important;
    font-size: 100% !important;
    line-height: 1.5 !important;
}
#p-toc #toc ul {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
#p-toc #toc li {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5 !important;
}
#p-toc #toc .tocnumber {
    color: #202122 !important;
    padding-right: 0.25em;
}
#p-toc #toc .toctext {
    color: #0645ad;
}