Difference between revisions of "MediaWiki:Common.css"

From QuData
Jump to navigation Jump to search
(Независимый левый сайдбар со скроллом)
(Отступ в самом низу содержания сайдбара, чтобы последний пункт не прилипал к низу экрана)
 
(3 intermediate revisions by the same user not shown)
Line 75: Line 75:
  
  
/* --- Независимость левого сайдбара с содержанием --- */
 
  
 
/* --- Независимость левого сайдбара с содержанием --- */
 
/* --- Независимость левого сайдбара с содержанием --- */
Line 82: Line 81:
 
     top: 0 !important;  
 
     top: 0 !important;  
 
     left: 0 !important;
 
     left: 0 !important;
     height: calc(100vh - 50px) !important; /* Отнимаем 50px от высоты экрана */
+
     height: 100vh !important;
 
     overflow-y: auto !important;  
 
     overflow-y: auto !important;  
 
     overflow-x: hidden !important;  
 
     overflow-x: hidden !important;  
 
     padding-top: 0 !important;  
 
     padding-top: 0 !important;  
 
     z-index: 99 !important;
 
     z-index: 99 !important;
 +
    width: 10.4em !important; /* Сдвигаем невидимую границу вправо, освобождая место для поиска */
 
}
 
}
  
Line 94: Line 94:
 
     top: 0 !important;  
 
     top: 0 !important;  
 
     display: block !important;
 
     display: block !important;
     min-height: 170px !important; /* Жестко бронируем высоту, чтобы надпись "documentation" точно влезла */
+
     min-height: 180px !important; /* Жестко бронируем высоту, чтобы надпись "documentation" точно влезла */
 
     margin-bottom: 15px !important; /* Увеличили отступ, чтобы аккуратно отодвинуть поиск */
 
     margin-bottom: 15px !important; /* Увеличили отступ, чтобы аккуратно отодвинуть поиск */
 
}
 
}
Line 108: Line 108:
 
     background-color: #c8ccd1;  
 
     background-color: #c8ccd1;  
 
     border-radius: 4px;
 
     border-radius: 4px;
 +
}
 +
 +
/* Создаем невидимую пустую область (распорку) в самом низу содержимого сайдбара */
 +
#mw-panel::after {
 +
    content: "";
 +
    display: block;
 +
    height: 50px;
 
}
 
}

Latest revision as of 12:10, 17 June 2026

/* CSS placed here will be applied to all skins */

/* Снимаем ограничения ширины с главного контейнера оглавления */
#mw-panel .toc,
#mw-panel #toc {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    display: block !important; /* Убиваем дефолтный display: table, который распирает блок */
}

/* Уменьшаем огромные отступы у вложенных списков (лесенку) */
#mw-panel .toc ul,
#mw-panel #toc ul {
    margin-left: 12px !important; /* Делаем шаг вложенности минимальным */
    padding-left: 0 !important;
}

/* Превращаем ссылки во Flex-контейнеры, чтобы номер и текст не конфликтовали */
#mw-panel .toc a,
#mw-panel #toc a {
    display: flex !important;
    align-items: flex-start !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Заставляем сам текст ломаться и переноситься, заполняя остаток ширины */
#mw-panel .toc .toctext,
#mw-panel #toc .toctext {
    white-space: normal !important;
    word-break: break-word !important; /* Сломает слово, только если оно длиннее всего сайдбара */
    overflow-wrap: break-word !important;
    padding-left: 0 !important;
    flex: 1 !important; /* Текст занимает всё оставшееся место */
}

/* Фиксируем цифры, чтобы Flexbox их не сплющил при длинном тексте */
#mw-panel .toc .tocnumber,
#mw-panel #toc .tocnumber {
    flex-shrink: 0 !important;
    margin-right: 0 !important;
    padding-right: 6px !important;
}

/* Раздвигаем пункты содержания по вертикали */
#mw-panel .toc li,
#mw-panel #toc li {
    margin-bottom: 8px !important; 
}

/* Отрываем блок подпунктов от родительского текста */
#mw-panel .toc ul ul,
#mw-panel #toc ul ul {
    margin-top: 8px !important;
}

/* Обычная (непосещенная) ссылка */
#mw-panel .toc a:link,
#mw-panel #toc a:link {
    color: #3366BB !important;
}

/* Посещенная ссылка (стандартный фиолетовый цвет MediaWiki) */
#mw-panel .toc a:visited,
#mw-panel #toc a:visited {
    color: #0B0080 !important; 
}

/* Красная (битая) ссылка */
#mw-panel .toc a.new,
#mw-panel #toc a.new {
    color: #CC2200 !important;
}



/* --- Независимость левого сайдбара с содержанием --- */
#mw-panel {
    position: fixed !important; 
    top: 0 !important; 
    left: 0 !important;
    height: 100vh !important;
    overflow-y: auto !important; 
    overflow-x: hidden !important; 
    padding-top: 0 !important; 
    z-index: 99 !important;
    width: 10.4em !important; /* Сдвигаем невидимую границу вправо, освобождая место для поиска */
}

/* Возвращаем логотип внутрь сайдбара и защищаем его подпись */
#p-logo {
    position: relative !important;
    top: 0 !important; 
    display: block !important;
    min-height: 180px !important; /* Жестко бронируем высоту, чтобы надпись "documentation" точно влезла */
    margin-bottom: 15px !important; /* Увеличили отступ, чтобы аккуратно отодвинуть поиск */
}

/* Делаем ползунок скролла тонким и красивым (для браузеров Chrome/Edge/Safari/Opera) */
#mw-panel::-webkit-scrollbar {
    width: 6px;
}
#mw-panel::-webkit-scrollbar-track {
    background: transparent;
}
#mw-panel::-webkit-scrollbar-thumb {
    background-color: #c8ccd1; 
    border-radius: 4px;
}

/* Создаем невидимую пустую область (распорку) в самом низу содержимого сайдбара */
#mw-panel::after {
    content: "";
    display: block;
    height: 50px;
}