Перейти к содержанию

MediaWiki:Vector-2022.css: различия между версиями

Материал из GravityWiki
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
/*
/***** Infobox (порт с ru.minecraft.wiki, облегчённый) *****/
MediaWiki:Vector-2022.css
*/


/* ====== Отладка ====== */
/* Цвета по умолчанию (можно подкорректировать) */
/* Пунктирная рамка вокруг инфобокса, чтобы сразу видеть, применился ли стиль */
:root {
body.skin-vector-2022 .mw-parser-output > .infobox {
  --infobox-title-background-color: #518416;
   outline: 3px dashed magenta !important;
  --infobox-title-top-border-color: #80bb28;
  --infobox-title-border-inline-color: #467314;
  --infobox-title-bottom-border-color: #365c0e;
 
  --infobox-rows-background-alt: #f9f9f9;
  --infobox-rows-border: #ccc;
}
 
/* Контейнер карточки */
.notaninfobox,
.infobox.notaninfobox {
  position: relative;
  float: right;
  clear: right;
  z-index: 1;
 
  margin: 0 0 1em 1em;
  padding: 2px;
  width: 300px;
 
  background: #fff;
  border: 1px solid var(--infobox-title-background-color);
 
  font-size: 90%;
  overflow: auto;
}
 
/* Тёмная тема (если используете body.wgl-theme-dark — иначе смело удаляй) */
body.wgl-theme-dark .notaninfobox {
  background: #282828;
}
 
/* Заголовок карточки */
.notaninfobox .infobox-title {
  margin: 1px 2px 0;
  padding: 5px;
 
  background-color: var(--infobox-title-background-color);
  border-inline: 3px solid var(--infobox-title-border-inline-color);
  border-top: 3px solid var(--infobox-title-top-border-color);
  border-bottom: 3px solid var(--infobox-title-bottom-border-color);
 
  color: #fff;            /* читаемо на зелёном фоне */
  font-weight: 700;
  font-size: 140%;
  text-align: center;
  text-shadow: 2px 2px 0 var(--infobox-title-bottom-border-color);
}
 
/* Подзаголовок (если нужен) */
.notaninfobox .infobox-subtitle { font-size: 80%; }
 
/* Блок(и) изображений вверху карточки */
.infobox-imagearea,
.notaninfobox .infobox-image {
  text-align: center;
  padding: 4px;
}
.infobox-imagearea > div:not(:first-child) { padding-top: 1em; }
 
/* Галерея превью (если используете несколько файлов) */
.infobox-gallery {
   display: grid;
  grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
  gap: 6px;
  align-items: end;
  margin: .4em .5em;
}
.infobox-gallery .image { display: block; }
.infobox-gallery img {
  max-width: 100%;
  height: auto;
  display: block;
}
 
/* Табличная часть карточки */
.notaninfobox .infobox-rows {
  display: table;
  width: 100% !important;
  margin: 0 !important;
  border-collapse: collapse;
}
.notaninfobox .infobox-rows td { padding: 6px 8px; }
 
/* Границы между строками */
.infobox-rows tr {
  border-top: 1px solid var(--infobox-rows-border);
}
}


/* ====== Позиционирование инфобокса ====== */
/* Подписи слева, данные справа (если выводится таблицей) */
/* Ставим инфобокс строго справа и с отступом */
.infobox-rows > tbody > tr > th {
body.skin-vector-2022 .mw-parser-output > .infobox {
   text-align: left;
   float: right !important;
  padding: 6px 8px;
   margin: 0 0 1em 1em !important;
  vertical-align: top;
   width: 40%;
}
}


/* ====== Фикс обтекания ====== */
/* Чередование фона строк */
/* Убираем clear у всех элементов, которые идут после инфобокса */
.infobox-rows:not(.infobox-rows-alternate) tr:nth-child(2n) {
body.skin-vector-2022 .mw-parser-output > .infobox ~ * {
  background-color: var(--infobox-rows-background-alt);
   clear: none !important;
}
.infobox-rows.infobox-rows-alternate tr:nth-child(2n+1) {
   background-color: var(--infobox-rows-background-alt);
}
}


/* Дополнительно убираем clear у первого параграфа и первого блока после инфобокса */
/* Подвал карточки */
body.skin-vector-2022 .mw-parser-output > .infobox + * {
.infobox-footer { text-align: center; }
   clear: none !important;
 
/* Поддержка «анимированных» кадров (как у них) — упрощённая */
.animated > *:not(.animated-active),
.animated > .animated-subframe > *:not(.animated-active) { display: none; }
span.animated,
span.animated.animated-visible > *,
span.animated.animated-visible > .animated-subframe > * { display: inline-block; }
div.animated.animated-visible > *,
div.animated.animated-visible > .animated-subframe > * { display: block; }
 
/* Адаптация на узких экранах */
@media (max-width: 768px) {
   .notaninfobox {
    float: none;
    margin: 0 0 1em 0;
    width: auto;
  }
}
}
body.skin-vector-2022 .mw-parser-output > .infobox + p {
 
  clear: none !important;
/***** Хелперы для обтекания под Vector-2022 и прочие скины *****/
 
/* Не сбрасывать обтекание у первого блока после карточки */
.mw-parser-output > .notaninfobox + * { clear: none !important; }
.mw-parser-output > .notaninfobox + p { clear: none !important; }
 
/* На всякий — карточка всегда справа */
.mw-parser-output > .notaninfobox {
  float: right;
  margin: 0 0 1em 1em;
}
}

Версия от 09:07, 10 августа 2025

/***** Infobox (порт с ru.minecraft.wiki, облегчённый) *****/

/* Цвета по умолчанию (можно подкорректировать) */
:root {
  --infobox-title-background-color: #518416;
  --infobox-title-top-border-color: #80bb28;
  --infobox-title-border-inline-color: #467314;
  --infobox-title-bottom-border-color: #365c0e;

  --infobox-rows-background-alt: #f9f9f9;
  --infobox-rows-border: #ccc;
}

/* Контейнер карточки */
.notaninfobox,
.infobox.notaninfobox {
  position: relative;
  float: right;
  clear: right;
  z-index: 1;

  margin: 0 0 1em 1em;
  padding: 2px;
  width: 300px;

  background: #fff;
  border: 1px solid var(--infobox-title-background-color);

  font-size: 90%;
  overflow: auto;
}

/* Тёмная тема (если используете body.wgl-theme-dark — иначе смело удаляй) */
body.wgl-theme-dark .notaninfobox {
  background: #282828;
}

/* Заголовок карточки */
.notaninfobox .infobox-title {
  margin: 1px 2px 0;
  padding: 5px;

  background-color: var(--infobox-title-background-color);
  border-inline: 3px solid var(--infobox-title-border-inline-color);
  border-top: 3px solid var(--infobox-title-top-border-color);
  border-bottom: 3px solid var(--infobox-title-bottom-border-color);

  color: #fff;            /* читаемо на зелёном фоне */
  font-weight: 700;
  font-size: 140%;
  text-align: center;
  text-shadow: 2px 2px 0 var(--infobox-title-bottom-border-color);
}

/* Подзаголовок (если нужен) */
.notaninfobox .infobox-subtitle { font-size: 80%; }

/* Блок(и) изображений вверху карточки */
.infobox-imagearea,
.notaninfobox .infobox-image {
  text-align: center;
  padding: 4px;
}
.infobox-imagearea > div:not(:first-child) { padding-top: 1em; }

/* Галерея превью (если используете несколько файлов) */
.infobox-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
  gap: 6px;
  align-items: end;
  margin: .4em .5em;
}
.infobox-gallery .image { display: block; }
.infobox-gallery img {
  max-width: 100%;
  height: auto;
  display: block;
}

/* Табличная часть карточки */
.notaninfobox .infobox-rows {
  display: table;
  width: 100% !important;
  margin: 0 !important;
  border-collapse: collapse;
}
.notaninfobox .infobox-rows td { padding: 6px 8px; }

/* Границы между строками */
.infobox-rows tr {
  border-top: 1px solid var(--infobox-rows-border);
}

/* Подписи слева, данные справа (если выводится таблицей) */
.infobox-rows > tbody > tr > th {
  text-align: left;
  padding: 6px 8px;
  vertical-align: top;
  width: 40%;
}

/* Чередование фона строк */
.infobox-rows:not(.infobox-rows-alternate) tr:nth-child(2n) {
  background-color: var(--infobox-rows-background-alt);
}
.infobox-rows.infobox-rows-alternate tr:nth-child(2n+1) {
  background-color: var(--infobox-rows-background-alt);
}

/* Подвал карточки */
.infobox-footer { text-align: center; }

/* Поддержка «анимированных» кадров (как у них) — упрощённая */
.animated > *:not(.animated-active),
.animated > .animated-subframe > *:not(.animated-active) { display: none; }
span.animated,
span.animated.animated-visible > *,
span.animated.animated-visible > .animated-subframe > * { display: inline-block; }
div.animated.animated-visible > *,
div.animated.animated-visible > .animated-subframe > * { display: block; }

/* Адаптация на узких экранах */
@media (max-width: 768px) {
  .notaninfobox {
    float: none;
    margin: 0 0 1em 0;
    width: auto;
  }
}

/***** Хелперы для обтекания под Vector-2022 и прочие скины *****/

/* Не сбрасывать обтекание у первого блока после карточки */
.mw-parser-output > .notaninfobox + * { clear: none !important; }
.mw-parser-output > .notaninfobox + p { clear: none !important; }

/* На всякий — карточка всегда справа */
.mw-parser-output > .notaninfobox {
  float: right;
  margin: 0 0 1em 1em;
}