MediaWiki:Common.css: differenze tra le versioni
Pagina dell'interfaccia di MediaWiki
Altre azioni
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
| Riga 124: | Riga 124: | ||
/***************************** | /***************************** | ||
* Sidebar | * Sidebar responsive, generica (tutte le sezioni) | ||
* Compatibile con Vector 2022, Vector legacy | * - Desktop: griglia a 2+ colonne | ||
* - Mobile: 1 colonna con divisori | |||
* Compatibile con Vector 2022, Vector legacy, MonoBook | |||
*****************************/ | *****************************/ | ||
/* | /* TARGET GENERICI dei <ul> della sidebar */ | ||
. | :root { | ||
--sb-gap-x: 0.75rem; | |||
--sb-gap-y: 0.25rem; | |||
--sb-min: 120px; /* larghezza minima di una colonna */ | |||
--sb-divider: rgba(255,255,255,0.12); /* cambia su skin chiare */ | |||
} | |||
/* Tutte le liste dei portlet */ | |||
.skin-vector-2022 .vector-sidebar .vector-menu-content-list, | .skin-vector-2022 .vector-sidebar .vector-menu-content-list, | ||
.skin-vector .portal .body > ul, | .skin-vector .portal .body > ul, | ||
.skin-monobook .portal .body > ul, | .skin-monobook .portal .body > ul, | ||
.mw-portlet .vector-menu-content-list, | |||
.mw-portlet .vector-menu-content, | .mw-portlet .body > ul { | ||
.mw-portlet . | |||
margin: 0; | margin: 0; | ||
padding: 0; | padding: 0; | ||
list-style: none; | |||
/* | /* Sicurezza contro clipping */ | ||
overflow: visible !important; | overflow: visible !important; | ||
max-height: none !important; | max-height: none !important; | ||
} | } | ||
/* | /* MOBILE FIRST: 1 colonna con divisori */ | ||
.skin-vector-2022 .vector-sidebar .vector-menu-content-list li + li, | |||
.skin-vector .portal .body > ul li + li, | |||
.skin-monobook .portal .body > ul li + li, | |||
.mw-portlet .vector-menu-content-list li + li, | |||
.mw-portlet .body > ul li + li { | |||
border-top: 1px solid var(--sb-divider); | |||
padding-top: 6px; | |||
margin-top: 6px; | |||
} | |||
/* Evita spezzature brutte */ | |||
.skin-vector-2022 .vector-sidebar li, | .skin-vector-2022 .vector-sidebar li, | ||
.skin-vector li, | .skin-vector li, | ||
| Riga 157: | Riga 171: | ||
break-inside: avoid; | break-inside: avoid; | ||
-webkit-column-break-inside: avoid; | -webkit-column-break-inside: avoid; | ||
} | } | ||
/* | /* DESKTOP/TABLET: usa CSS GRID (preferito) */ | ||
@media (min-width: 768px) { | @media (min-width: 768px) { | ||
.skin-vector-2022 .vector-sidebar .vector-menu-content-list, | .skin-vector-2022 .vector-sidebar .vector-menu-content-list, | ||
.skin-vector .portal .body > ul, | .skin-vector .portal .body > ul, | ||
.skin-monobook .portal .body > ul, | .skin-monobook .portal .body > ul, | ||
.mw-portlet .vector-menu-content-list, | |||
.mw-portlet .vector-menu-content, | .mw-portlet .body > ul { | ||
.mw-portlet . | /* se disponibile, grid batte columns */ | ||
column- | display: grid; | ||
grid-template-columns: repeat(auto-fill, minmax(var(--sb-min), 1fr)); | |||
column-gap: 0; /* neutralizza gap “columns” se presente */ | |||
row-gap: var(--sb-gap-y); | |||
gap: var(--sb-gap-y) var(--sb-gap-x); | |||
} | } | ||
/* | /* in layout a griglia i divisori tra li non servono */ | ||
.skin-vector-2022 .vector-sidebar .vector-menu-content-list li + li, | |||
.skin-vector .portal .body > ul li + li, | |||
.skin-vector-2022 .vector-sidebar .vector-menu-content-list, | .skin-monobook .portal .body > ul li + li, | ||
.skin-vector .portal .body > ul, | .mw-portlet .vector-menu-content-list li + li, | ||
.skin-monobook .portal .body > ul | .mw-portlet .body > ul li + li { | ||
border-top: 0; | |||
.mw-portlet .vector-menu-content, | padding-top: 0; | ||
.mw-portlet . | margin-top: 0; | ||
} | } | ||
} | } | ||
/* | /* FALLBACK se grid non è supportato: usa multi-col flessibile */ | ||
@media ( | @supports not (display: grid) { | ||
@media (min-width: 768px) { | |||
.skin-vector-2022 .vector-sidebar .vector-menu-content-list, | |||
.skin-vector .portal .body > ul, | |||
.skin-monobook .portal .body > ul, | |||
.mw-portlet .vector-menu-content-list, | |||
.mw-portlet .body > ul { | |||
column-width: var(--sb-min); /* decide il browser quante colonne entrano */ | |||
column-gap: var(--sb-gap-x); | |||
/* fallback minimo a 2 colonne */ | |||
column-count: 2; | |||
} | |||
} | } | ||
} | } | ||
/* | /* Un filo di respiro sotto i portlet */ | ||
.skin-vector-2022 .vector-sidebar .vector-menu-content, | .skin-vector-2022 .vector-sidebar .vector-menu-content, | ||
.mw-portlet .vector-menu-content | .portal .body, | ||
.mw-portlet .vector-menu-content { | |||
padding-bottom: 0.25rem; | padding-bottom: 0.25rem; | ||
} | } | ||
Versione delle 14:48, 6 set 2025
/* ===============================
Stili globali per l'infobox
=============================== */
/* Infobox scura, stretta e verticale */
.infobox {
float: right;
clear: right;
width: 320px;
max-width: 320px; /* fissa su desktop */
margin: 0 0 1rem 1rem;
background: #0f0f10;
color: #e9e9ea;
border: 1px solid #27272a;
border-radius: 6px;
font-size: 0.95em;
line-height: 1.45;
box-sizing: border-box;
}
/* Titolo */
.infobox .ib-title {
background: #151519;
padding: 0.6rem 0.8rem;
text-align: center;
font-weight: 700;
font-size: 1.05em;
}
/* Immagine + didascalia */
.infobox .ib-image {
text-align: center;
padding: 0.5rem;
}
.infobox .ib-image img {
max-width: 100%;
height: auto;
}
.infobox .ib-caption {
color: #b6b6b8;
font-size: 0.85em;
text-align: center;
font-style: italic;
margin: 0.25rem 0.5rem 0.5rem;
}
/* Righe (flex: etichetta a sinistra, dato a destra) */
.ib-row {
display: flex;
}
.ib-label,
.ib-data {
padding: 0.45rem 0.6rem;
}
.ib-label {
width: 42%;
background: #151519;
text-align: left;
font-weight: 600;
vertical-align: top;
}
.ib-data {
width: 58%;
word-break: break-word;
overflow-wrap: anywhere;
}
.ib-row:nth-of-type(even) .ib-data {
background: #121214;
}
/* Link */
.infobox a {
color: #58a6ff;
text-decoration: none;
}
.infobox a:hover {
text-decoration: underline;
}
/*
*** STOP AI BUCHI ***
MediaWiki inserisce <p> tra i blocchi → li azzeriamo/eliminiamo.
Manteniamo invece i <p> dentro .ib-data (testo dell'utente).
*/
.infobox > p {
margin: 0 !important;
padding: 0 !important;
display: none !important;
}
/* Mobile: piena larghezza, niente float */
@media (max-width: 768px) {
.infobox {
float: none;
width: 100%;
max-width: 100%;
margin: 0.5rem 0 1rem;
}
}
/* Nasconde il link duplicato aggiunto nel portlet Navigation */
#n-specialpages {
display: none !important;
}
/*****************************
* Sidebar responsive, generica (tutte le sezioni)
* - Desktop: griglia a 2+ colonne
* - Mobile: 1 colonna con divisori
* Compatibile con Vector 2022, Vector legacy, MonoBook
*****************************/
/* TARGET GENERICI dei <ul> della sidebar */
:root {
--sb-gap-x: 0.75rem;
--sb-gap-y: 0.25rem;
--sb-min: 120px; /* larghezza minima di una colonna */
--sb-divider: rgba(255,255,255,0.12); /* cambia su skin chiare */
}
/* Tutte le liste dei portlet */
.skin-vector-2022 .vector-sidebar .vector-menu-content-list,
.skin-vector .portal .body > ul,
.skin-monobook .portal .body > ul,
.mw-portlet .vector-menu-content-list,
.mw-portlet .body > ul {
margin: 0;
padding: 0;
list-style: none;
/* Sicurezza contro clipping */
overflow: visible !important;
max-height: none !important;
}
/* MOBILE FIRST: 1 colonna con divisori */
.skin-vector-2022 .vector-sidebar .vector-menu-content-list li + li,
.skin-vector .portal .body > ul li + li,
.skin-monobook .portal .body > ul li + li,
.mw-portlet .vector-menu-content-list li + li,
.mw-portlet .body > ul li + li {
border-top: 1px solid var(--sb-divider);
padding-top: 6px;
margin-top: 6px;
}
/* Evita spezzature brutte */
.skin-vector-2022 .vector-sidebar li,
.skin-vector li,
.skin-monobook li,
.mw-portlet li {
break-inside: avoid;
-webkit-column-break-inside: avoid;
}
/* DESKTOP/TABLET: usa CSS GRID (preferito) */
@media (min-width: 768px) {
.skin-vector-2022 .vector-sidebar .vector-menu-content-list,
.skin-vector .portal .body > ul,
.skin-monobook .portal .body > ul,
.mw-portlet .vector-menu-content-list,
.mw-portlet .body > ul {
/* se disponibile, grid batte columns */
display: grid;
grid-template-columns: repeat(auto-fill, minmax(var(--sb-min), 1fr));
column-gap: 0; /* neutralizza gap “columns” se presente */
row-gap: var(--sb-gap-y);
gap: var(--sb-gap-y) var(--sb-gap-x);
}
/* in layout a griglia i divisori tra li non servono */
.skin-vector-2022 .vector-sidebar .vector-menu-content-list li + li,
.skin-vector .portal .body > ul li + li,
.skin-monobook .portal .body > ul li + li,
.mw-portlet .vector-menu-content-list li + li,
.mw-portlet .body > ul li + li {
border-top: 0;
padding-top: 0;
margin-top: 0;
}
}
/* FALLBACK se grid non è supportato: usa multi-col flessibile */
@supports not (display: grid) {
@media (min-width: 768px) {
.skin-vector-2022 .vector-sidebar .vector-menu-content-list,
.skin-vector .portal .body > ul,
.skin-monobook .portal .body > ul,
.mw-portlet .vector-menu-content-list,
.mw-portlet .body > ul {
column-width: var(--sb-min); /* decide il browser quante colonne entrano */
column-gap: var(--sb-gap-x);
/* fallback minimo a 2 colonne */
column-count: 2;
}
}
}
/* Un filo di respiro sotto i portlet */
.skin-vector-2022 .vector-sidebar .vector-menu-content,
.portal .body,
.mw-portlet .vector-menu-content {
padding-bottom: 0.25rem;
}