MediaWiki:Common.css: Difference between revisions

From Cobi Collectors Wiki
Undo revision 2240 by Dieba (talk)
Tag: Undo
No edit summary
 
(56 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* ==========================================================================
/* ==========================================================================
   1. BASIS-STYLING & BILDER
   1. VARIABLEN & BASIS-STYLING
   ========================================================================== */
   ========================================================================== */
:root {
    --bg-light: #ebecf0;
    --border-gray: 1px solid #aaa;
    --shadow-dark: 5px 5px 10px black;
    --accent-blue: #9FB6CD;
}
.mw-parser-output img {
.mw-parser-output img {
     max-width: 100%;
     max-width: 100%;
     height: auto;
     height: auto;
}
/* Gemeinsame Basis für alle Box-Elemente */
.infobox, .headersetpage, .headernocolumn, .headercatpage,
.box1, .box2, .box3, .box4 {
    background: var(--bg-light);
    border: var(--border-gray);
    box-shadow: var(--shadow-dark);
    box-sizing: border-box;
}
}


/* ==========================================================================
/* ==========================================================================
   2. BOX-ELEMENTE & HEADERS (DEIN ORIGINAL-DESIGN)
   2. BOX-ELEMENTE & HEADERS
   ========================================================================== */
   ========================================================================== */
.infobox {
.infobox {
    box-shadow: 5px 5px 10px black;
    vertical-align: middle;
    background: #ebecf0;
    border: 1px solid #aaa;
     float: right;
     float: right;
     margin: 0 0 0.5em 0.5em;
     margin: 0 0 0.5em 0.5em;
     padding: 0.5em;
     padding: 0.5em;
     width: 300px;
     width: 300px;
    vertical-align: middle;
}
}


Line 24: Line 37:
     width: 100%;
     width: 100%;
     margin-bottom: 20px;
     margin-bottom: 20px;
    background: #ebecf0;
    border: 1px solid #aaa;
     padding: 8px 15px;
     padding: 8px 15px;
    box-shadow: 5px 5px 10px black;
     font-size: 18px;
     font-size: 18px;
    box-sizing: border-box;
}
}


Line 37: Line 46:
.textbox {
.textbox {
     width: 50%;
     width: 50%;
     background: #ebecf0;
     background: var(--bg-light);
     border: 2px solid #9FB6CD;
     border: 2px solid var(--accent-blue);
     padding: 8px 15px;
     padding: 8px 15px;
     margin: 0 auto;
     margin: 0 auto;
Line 44: Line 53:


.box-headline {
.box-headline {
     background-color: #9FB6CD;
     background-color: var(--accent-blue);
     font-size: 16px;
     font-size: 16px;
     padding: 8px 12px; /* Innenabstand im blauen Balken */
     padding: 8px 12px;
     margin: 0 0 15px 0; /* Nur ein Abstand nach unten zum Text, aber kein negativer Margin zu den Seiten */
     margin-bottom: 15px;
     border: 1px solid #8aa3bc; /* Optional: Ein feiner Rahmen um den Balken */
     border: 1px solid #8aa3bc;
     border-radius: 4px; /* Optional: Leicht abgerundete Ecken, passend zum "schwebenden" Look */
     border-radius: 4px;
     font-weight: bold;
     font-weight: bold;
     display: block;
     display: block;
     box-shadow: 2px 2px 5px rgba(0,0,0,0.1); /* Optional: Ein kleiner Schatten für den Balken */
     box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
}
     text-align: left !important;
 
.innercenter {
     text-align: center;
    padding: 15px;
}
}


/* ==========================================================================
/* ==========================================================================
   3. LOGO BEREICH (BILD-GRÖSSE ERZWINGEN)
   3. LOGO & TEXT BEREICH
   ========================================================================== */
   ========================================================================== */
.aboutsetlogo {
.aboutsetlogo {
     width: 150px;  
     width: 150px;  
     float: left;
     float: left;
     margin-right: 30px;
     margin: 0 30px 15px 0;
    margin-bottom: 15px;
    display: block;
}
}


/* Dieser Teil stellt sicher, dass das BILD im Container mitwächst */
.aboutsetlogo img {
.aboutsetlogo img {
     width: 100% !important;
     width: 100% !important;
     height: auto !important;
     height: auto !important;
    max-width: none !important; /* Hebt globale Begrenzungen auf */
}
}


.aboutsettext {
.aboutsettext {
    display: block;
     overflow: hidden;  
     overflow: hidden;  
     min-height: 120px;
     min-height: 120px;
Line 93: Line 93:
     border: 1px solid #000;
     border: 1px solid #000;
     border-collapse: collapse;
     border-collapse: collapse;
     display: block;  
     display: table;
     overflow-x: auto;
     overflow-x: auto;
     width: fit-content;
     width: fit-content;
     max-width: 100%;
     max-width: 100%;
    box-shadow: var(--shadow-dark);
    border-radius: 4px;
}
}


Line 105: Line 107:


.cobitable th {
.cobitable th {
     background-color: #9FB6CD;
     background-color: var(--accent-blue);
     font-weight: bold;
     font-weight: bold;
     text-align: center;
     text-align: center;
Line 111: Line 113:


/* ==========================================================================
/* ==========================================================================
   5. GRIDS (MAINPAGE & BRICKS)
   5. GRIDS (MAINPAGE)
   ========================================================================== */
   ========================================================================== */
.mainparent {
.mainparent {
     display: grid;
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     grid-template-columns: 4fr 6fr;
     grid-template-rows: 160px repeat(2, 1fr);  
     gap: 15px;
    grid-column-gap: 15px;
}
     grid-row-gap: 15px;
 
.box1 { grid-column: 1 / 3; padding: 15px; }
.box2 { grid-column: 1; padding: 15px; }
.box3 { grid-column: 1; padding: 15px; }
.box4 { grid-column: 2; grid-row: 2 / 4; padding: 15px; text-align: center; }
 
.box4-content {
    display: flex !important;
     flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 35px !important; /* Erzeugt horizontalen und vertikalen Abstand */
    margin-top: 10px;
}
 
/* Wir sorgen dafür, dass die Links nebeneinander bleiben */
.box4-content a,
.box4-content .mw-file-description {
    display: inline-flex !important; /* 'inline' hält sie in der Zeile */
    margin: 0 !important;
    padding: 0 !important;
}
 
.box4-content img {
    width: 150px !important; /* Feste Breite für das Raster */
    height: auto !important;
    border-radius: 4px;
    transition: transform 0.3s ease;
    display: block;
}
 
.box4-content img:hover {
    transform: scale(1.08);  
}
}


.box1 { grid-area: 1 / 1 / 2 / 3; background: #ebecf0; border: 1px solid #aaa; padding: 15px; box-shadow: 5px 5px 10px black; }
.innercenter {
.box2 { grid-area: 2 / 1 / 3 / 2; background: #ebecf0; border: 1px solid #aaa; padding: 15px; box-shadow: 5px 5px 10px black; }
    display: grid !important;
.box3 { grid-area: 3 / 1 / 4 / 2; background: #ebecf0; border: 1px solid #aaa; padding: 15px; box-shadow: 5px 5px 10px black; }
    /* Erzeugt Spalten, die min. so groß wie das Bild sind, aber max. 200px */
.box4 { grid-area: 2 / 2 / 4 / 3; background: #ebecf0; border: 1px solid #aaa; padding: 15px; box-shadow: 5px 5px 10px black; }
    grid-template-columns: repeat(auto-fill, minmax(100px, 200px));
    gap: 20px;
    justify-content: flex-start; /* Oder 'center', falls gewünscht */
    align-items: center;
    margin: 20px 0;
}


/* --- ZENTRIERUNG DER BILDER IN BOX 4 (RECHTS) --- */
/* Wir bändigen alle direkten Kinder (Wrapper von MediaWiki) */
.box4 {
.innercenter > * {
     text-align: center; /* Zentriert Text und inline-Bilder */
     display: block !important;
    width: 100% !important;
    max-width: 200px !important;
}
}


.box4 img {
/* Das Bild passt sich dem Grid-Platz an */
     margin: 5px auto;   /* Gibt den Bildern vertikalen Abstand und zentriert sie */
.innercenter img {
     display: inline-block; /* Erlaubt es, dass mehrere Bilder nebeneinander stehen */
     width: auto !important;
    max-width: 100% !important;
    height: auto !important;
     display: block;
    margin: 0 auto !important; /* Zentriert das Bild innerhalb seiner Grid-Zelle */
}
}


/* ==========================================================================
  6. BRICK-CONTAINER (DER FINALE LINKS-FIX)
  ========================================================================== */
.brickparent {
.brickparent {
     display: grid;
     display: flex !important;
     grid-template-columns: repeat(4, 1fr);
     flex-wrap: wrap !important;
     grid-gap: 25px;
     justify-content: flex-start !important; /* Richtet die Zeilen links aus */
     align-items: center;
     align-items: center;
     padding: 10px;
    gap: 25px;
     padding: 25px;
    background: #ebecf0;
    border: 1px solid #aaa;
    box-shadow: 5px 5px 10px black;
    border-radius: 8px;
    margin: 20px 0;
}
 
/* Der entscheidende Teil: Wir zwingen die Unterelemente auf ihre natürliche Breite */
.brickparent > * {
    flex: 0 0 auto !important; /* Verhindert das Ausdehnen */
    display: flex !important;
    justify-content: flex-start !important;
}
 
/* Hover-Effekt auf dem Link/Container */
.brickparent a,
.brickparent .mw-file-description {
    display: inline-block !important;
    transition: transform 0.2s ease-in-out !important;
    cursor: pointer;
    padding: 5px;
    border-radius: 4px;
}
 
.brickparent a:hover,
.brickparent .mw-file-description:hover {
    transform: scale(1.05);
    background-color: rgba(159, 182, 205, 0.2);
    z-index: 10;  
}
}


.brickparent > div { text-align: center; }
/* Bild-Anpassung */
.brickparent img {
    width: auto !important;
    max-width: 200px !important;
    height: auto !important;
    max-height: 80px !important;
    display: block;
    margin: 0 !important;
}


/* ==========================================================================
/* ==========================================================================
   6. MOBILE OPTIMIERUNG (DER FINALE FIX)
   7. MOBILE OPTIMIERUNG
   ========================================================================== */
   ========================================================================== */
@media screen and (max-width: 720px) {
@media screen and (max-width: 720px) {
    /* Das Grid komplett auflösen */
     .mainparent {
     .mainparent {
         display: block !important; /* Flex/Grid durch Block ersetzen für maximale Stabilität */
         display: flex;
         width: 100% !important;
         flex-direction: column;
        padding: 0 !important;
     }
     }


    /* Alle Boxen (box1 bis box4) radikal auf 100% Breite setzen */
     .box1, .box2, .box3, .box4, .infobox, .textbox {
     .box1, .box2, .box3, .box4 {
         width: 100% !important;
         width: 100% !important;
        grid-area: auto !important; /* WICHTIG: Hebt die Raster-Positionierung auf */
        margin: 0 0 20px 0 !important; /* Abstand nach unten */
        box-sizing: border-box !important; /* Padding wird in die 100% eingerechnet */
         float: none !important;
         float: none !important;
         display: block !important;
         margin: 0 0 15px 0 !important;
     }
     }
   
    .headernocolumn, .headercatpage { height: auto; }


     .infobox {
     .brickparent {
         float: none !important;
         gap: 10px;
        width: 100% !important;
         justify-content: center !important; /* Mobile bleibt zentriert oft besser */
         margin: 0 0 1em 0 !important;
        box-sizing: border-box !important;
     }
     }


     .textbox {
     .brickparent img {
         width: 100% !important;
         max-width: 120px !important;
         box-sizing: border-box !important;
    }
    .brickparent a,
    .brickparent .mw-file-description {
         float: none !important;      /* Auf Mobile kein Float */
        display: inline-block !important;
        margin-right: 10px !important;
        margin-bottom: 15px !important;
    }
   
.innercenter {
        grid-template-columns: repeat(auto-fill, minmax(80px, 150px));
        gap: 10px;
        justify-content: center;
    }
    .innercenter * {
        max-width: 150px !important;
     }
     }
}
}

Latest revision as of 20:42, 31 January 2026

/* ==========================================================================
   1. VARIABLEN & BASIS-STYLING
   ========================================================================== */
:root {
    --bg-light: #ebecf0;
    --border-gray: 1px solid #aaa;
    --shadow-dark: 5px 5px 10px black;
    --accent-blue: #9FB6CD;
}

.mw-parser-output img {
    max-width: 100%;
    height: auto;
}

/* Gemeinsame Basis für alle Box-Elemente */
.infobox, .headersetpage, .headernocolumn, .headercatpage, 
.box1, .box2, .box3, .box4 {
    background: var(--bg-light);
    border: var(--border-gray);
    box-shadow: var(--shadow-dark);
    box-sizing: border-box;
}

/* ==========================================================================
   2. BOX-ELEMENTE & HEADERS
   ========================================================================== */
.infobox {
    float: right;
    margin: 0 0 0.5em 0.5em;
    padding: 0.5em;
    width: 300px;
    vertical-align: middle;
}

.headersetpage, .headernocolumn, .headercatpage {
    width: 100%;
    margin-bottom: 20px;
    padding: 8px 15px;
    font-size: 18px;
}

.headernocolumn { height: 80px; font-size: 16px; }
.headercatpage { height: 100px; }

.textbox {
    width: 50%;
    background: var(--bg-light);
    border: 2px solid var(--accent-blue);
    padding: 8px 15px;
    margin: 0 auto;
}

.box-headline {
    background-color: var(--accent-blue);
    font-size: 16px;
    padding: 8px 12px;
    margin-bottom: 15px;
    border: 1px solid #8aa3bc;
    border-radius: 4px;
    font-weight: bold;
    display: block;
    box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
    text-align: left !important;
}

/* ==========================================================================
   3. LOGO & TEXT BEREICH
   ========================================================================== */
.aboutsetlogo {
    width: 150px; 
    float: left;
    margin: 0 30px 15px 0;
}

.aboutsetlogo img {
    width: 100% !important;
    height: auto !important;
}

.aboutsettext {
    overflow: hidden; 
    min-height: 120px;
}

/* ==========================================================================
   4. TABELLEN (COBITABLE)
   ========================================================================== */
.cobitable {
    background-color: #f8f9fa;
    color: #202122;
    margin: 1em auto;
    border: 1px solid #000;
    border-collapse: collapse;
    display: table;
    overflow-x: auto;
    width: fit-content;
    max-width: 100%;
    box-shadow: var(--shadow-dark); 
    border-radius: 4px;
}

.cobitable th, .cobitable td {
    border: 1px solid #444 !important;
    padding: 0.6em 0.8em;
}

.cobitable th {
    background-color: var(--accent-blue);
    font-weight: bold;
    text-align: center;
}

/* ==========================================================================
   5. GRIDS (MAINPAGE)
   ========================================================================== */
.mainparent {
    display: grid;
    grid-template-columns: 4fr 6fr;
    gap: 15px;
}

.box1 { grid-column: 1 / 3; padding: 15px; }
.box2 { grid-column: 1; padding: 15px; }
.box3 { grid-column: 1; padding: 15px; }
.box4 { grid-column: 2; grid-row: 2 / 4; padding: 15px; text-align: center; }

.box4-content {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 35px !important; /* Erzeugt horizontalen und vertikalen Abstand */
    margin-top: 10px;
}

/* Wir sorgen dafür, dass die Links nebeneinander bleiben */
.box4-content a, 
.box4-content .mw-file-description {
    display: inline-flex !important; /* 'inline' hält sie in der Zeile */
    margin: 0 !important;
    padding: 0 !important;
}

.box4-content img {
    width: 150px !important; /* Feste Breite für das Raster */
    height: auto !important;
    border-radius: 4px;
    transition: transform 0.3s ease;
    display: block;
}

.box4-content img:hover { 
    transform: scale(1.08); 
}

.innercenter {
    display: grid !important;
    /* Erzeugt Spalten, die min. so groß wie das Bild sind, aber max. 200px */
    grid-template-columns: repeat(auto-fill, minmax(100px, 200px));
    gap: 20px;
    justify-content: flex-start; /* Oder 'center', falls gewünscht */
    align-items: center;
    margin: 20px 0;
}

/* Wir bändigen alle direkten Kinder (Wrapper von MediaWiki) */
.innercenter > * {
    display: block !important;
    width: 100% !important;
    max-width: 200px !important;
}

/* Das Bild passt sich dem Grid-Platz an */
.innercenter img {
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    display: block;
    margin: 0 auto !important; /* Zentriert das Bild innerhalb seiner Grid-Zelle */
}

/* ==========================================================================
   6. BRICK-CONTAINER (DER FINALE LINKS-FIX)
   ========================================================================== */
.brickparent {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important; /* Richtet die Zeilen links aus */
    align-items: center; 
    gap: 25px;
    padding: 25px;
    background: #ebecf0;
    border: 1px solid #aaa;
    box-shadow: 5px 5px 10px black;
    border-radius: 8px;
    margin: 20px 0;
}

/* Der entscheidende Teil: Wir zwingen die Unterelemente auf ihre natürliche Breite */
.brickparent > * {
    flex: 0 0 auto !important; /* Verhindert das Ausdehnen */
    display: flex !important;
    justify-content: flex-start !important;
}

/* Hover-Effekt auf dem Link/Container */
.brickparent a, 
.brickparent .mw-file-description {
    display: inline-block !important;
    transition: transform 0.2s ease-in-out !important;
    cursor: pointer;
    padding: 5px;
    border-radius: 4px;
}

.brickparent a:hover, 
.brickparent .mw-file-description:hover {
    transform: scale(1.05); 
    background-color: rgba(159, 182, 205, 0.2); 
    z-index: 10; 
}

/* Bild-Anpassung */
.brickparent img {
    width: auto !important;
    max-width: 200px !important; 
    height: auto !important;
    max-height: 80px !important; 
    display: block;
    margin: 0 !important;
}

/* ==========================================================================
   7. MOBILE OPTIMIERUNG
   ========================================================================== */
@media screen and (max-width: 720px) {
    .mainparent {
        display: flex;
        flex-direction: column;
    }

    .box1, .box2, .box3, .box4, .infobox, .textbox {
        width: 100% !important;
        float: none !important;
        margin: 0 0 15px 0 !important;
    }
    
    .headernocolumn, .headercatpage { height: auto; }

    .brickparent {
        gap: 10px;
        justify-content: center !important; /* Mobile bleibt zentriert oft besser */
    }

    .brickparent img {
        max-width: 120px !important;
    }
    .brickparent a, 
    .brickparent .mw-file-description {
        float: none !important;      /* Auf Mobile kein Float */
        display: inline-block !important;
        margin-right: 10px !important;
        margin-bottom: 15px !important;
    }
    
.innercenter {
        grid-template-columns: repeat(auto-fill, minmax(80px, 150px));
        gap: 10px;
        justify-content: center;
    }
    .innercenter * {
        max-width: 150px !important;
    }
}