Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

« Modèle:Button/styles.css » : différence entre les versions

De Nefald
Hiob (discussion | contributions)
Annulation des modifications 4046 de Hiob (discussion)
Balises : Annulation Révoqué
Hiob (discussion | contributions)
mAucun résumé des modifications
 
(25 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
/* ============================================
/* ============================================
   MASQUER L'ICÔNE DE LIEN EXTERNE MEDIAWIKI
   VARIABLES CSS (wrapper pour TemplateStylesExtender)
   ============================================ */
   ============================================ */
 
.button-link-vars {
.button-link-wrapper a.external,
    --btn-surface-0: var(--color-surface-0);
.button-link-wrapper a[href^="http"]::after,
    --btn-surface-1: var(--color-surface-1);
.button-link-wrapper a.external::after {
    --btn-surface-2: var(--color-surface-2);
     background-image: none !important;
     --btn-surface-3: var(--color-surface-3);
     background: none !important;
     --btn-surface-4: var(--color-surface-4);
     padding-right: 0 !important;
     --btn-text-dark: var(--color-base);
     content: '' !important;
     margin-bottom: 8px;
}
}


.button-link-wrapper .mw-parser-output a.external {
/* Dernier bouton sans marge */
     background: none !important;
.button-link-vars:last-child {
    padding: 0 !important;
     margin-bottom: 0;
}
}


/* ============================================
/* ============================================
   BASE DU BOUTON
   BOUTON - Base
   ============================================ */
   ============================================ */
.button-link-wrapper {
.button-link-wrapper {
     min-height: 100px;
     min-height: 60px;
     border-radius: 12px;
     border-radius: 12px;
     overflow: hidden;
     overflow: hidden;
Ligne 28 : Ligne 27 :
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
     box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
     position: relative;
     position: relative;
     background: #6c757d;
     background-color: var(--background-color-progressive);
     display: flex;
     display: flex;
     align-items: center;
     align-items: center;
Ligne 37 : Ligne 36 :
     transform: translateY(-2px);
     transform: translateY(-2px);
     box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
     box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
    background-color: var(--background-color-progressive--hover);
}
}


/* ============================================
.button-link-content {
  ZONE CLIQUABLE (lien invisible)
  ============================================ */
 
.button-link-wrapper > a {
    position: absolute !important;
    top: 0;
    left: 0;
     width: 100%;
     width: 100%;
     height: 100%;
     height: 100%;
    z-index: 20;
     text-align: center;
    opacity: 0;
     padding: 1rem;
    overflow: hidden;
     text-indent: -9999px;
     display: block !important;
}
}


.button-link-clickzone {
.button-link-content a {
     position: absolute;
     color: var(--color-inverted-primary) !important;
     top: 0;
     text-decoration: none !important;
     left: 0;
     display: flex;
     width: 100%;
     flex-direction: column;
    align-items: center;
    justify-content: center;
     height: 100%;
     height: 100%;
    display: block;
}
}


/* Masquer complètement l'icône et le texte du lien */
/* Force la couleur même après visite */
.button-link-wrapper > a > .mw-file-description,
.button-link-content a:hover,
.button-link-wrapper > a > img {
.button-link-content a:visited,
     display: none !important;
.button-link-content a:active {
     color: var(--color-inverted-primary) !important;
}
}


/* ============================================
/* CONTENEUR D'IMAGE DE TAILLE FIXE */
  CONTENU DU BOUTON
.button-link-content .mw-file-description {
  ============================================ */
 
.button-link-content {
     display: flex;
     display: flex;
     align-items: center;
     align-items: center;
     justify-content: center;
     justify-content: center;
     gap: 20px;
     width: 200px;
    padding: 20px 30px;
     height: 50px;
     position: relative;
     margin: 0 auto 0.5rem;
     z-index: 10;
     overflow: hidden;
     pointer-events: none;
    width: 100%;
}
}


/* ============================================
/* IMAGE RESPONSIVE DANS LE CONTENEUR */
  DISPOSITION PAR DÉFAUT : IMAGE CENTRÉE
.button-link-content img {
  ============================================ */
    max-width: 100%;
    max-height: 100%;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
}


.button-link--imagepos-center .button-link-content {
/* Masquer l'icône de lien externe */
     flex-direction: column;
.button-link-content a.external::after {
    text-align: center;
     display: none !important;
}
}


/* ============================================
/* ============================================
   DISPOSITION : IMAGE À GAUCHE
   SURFACES ADAPTATIVES (style=surface-X)
   ============================================ */
   ============================================ */
.button-link--surface-0 {
    background-color: var(--btn-surface-0) !important;
}
.button-link--surface-0 .button-link-content a {
    color: var(--btn-text-dark) !important;
}


.button-link--imagepos-left .button-link-content {
.button-link--surface-1 {
     flex-direction: row;
    background-color: var(--btn-surface-1) !important;
    justify-content: flex-start;
}
    text-align: left;
.button-link--surface-1 .button-link-content a {
     color: var(--btn-text-dark) !important;
}
}


/* ============================================
.button-link--surface-2 {
  DISPOSITION : IMAGE À DROITE
    background-color: var(--btn-surface-2) !important;
  ============================================ */
}
.button-link--surface-2 .button-link-content a {
    color: var(--btn-text-dark) !important;
}
 
.button-link--surface-3 {
    background-color: var(--btn-surface-3) !important;
}
.button-link--surface-3 .button-link-content a {
    color: var(--btn-text-dark) !important;
}


.button-link--imagepos-right .button-link-content {
.button-link--surface-4 {
     flex-direction: row-reverse;
    background-color: var(--btn-surface-4) !important;
    justify-content: flex-start;
}
    text-align: right;
.button-link--surface-4 .button-link-content a {
     color: var(--btn-text-dark) !important;
}
}


/* ============================================
/* ============================================
   IMAGE
   COULEUR PERSONNALISÉE (background=#FF0000)
   ============================================ */
   ============================================ */
 
.button-link--custom-bg {
.button-link-image-container {
     background-color: var(--custom-bg) !important;
     flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    overflow: hidden;
}
}


.button-link-image {
.button-link--custom-bg:hover {
     display: block;
     background-color: var(--custom-bg) !important;
    max-width: 100%;
     filter: brightness(0.9);
     height: auto;
    object-fit: contain;
}
}


/* ============================================
/* ============================================
   TEXTE
   COULEURS PRÉDÉFINIES (logos)
   ============================================ */
   ============================================ */


.button-link-text {
/* ========== COULEURS GÉNÉRIQUES ========== */
    color: white;
.button-link--danger { background-color: #dc3545 !important; }
    font-size: 1.2em;
.button-link--dark { background-color: var(--btn-surface-4) !important; }
    line-height: 1.4;
.button-link--info { background-color: #17a2b8 !important; }
    font-weight: bold;
.button-link--light {
     text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
     background-color: var(--btn-surface-1) !important;  
     flex: 1;
}
    display: flex;
.button-link--light .button-link-content a {
     align-items: center;
     color: var(--btn-text-dark) !important;
}
.button-link--secondary {
     background-color: var(--btn-surface-2) !important;  
}
}
 
.button-link--secondary .button-link-content a {
/* Centrage vertical du texte selon la position */
     color: var(--btn-text-dark) !important;
.button-link--imagepos-center .button-link-text {
     justify-content: center;
}
}
 
.button-link--success { background-color: #28a745 !important; }
.button-link--imagepos-left .button-link-text {
.button-link--warning {  
     justify-content: flex-start;
     background-color: #ffc107 !important;  
}
}
 
.button-link--warning .button-link-content a {
.button-link--imagepos-right .button-link-text {
     color: #000 !important;
     justify-content: flex-end;
}
}


/* ============================================
/* ========== OUTILS DE DÉVELOPPEMENT ========== */
  COULEURS PRÉDÉFINIES (LOGOS)
.button-link--codepen { background-color: #000000 !important; }
  ============================================ */
.button-link--docker { background-color: #2496ed !important; }
.button-link--gradle { background-color: #02303a !important; }
.button-link--jenkins { background-color: #d24939 !important; }
.button-link--kubernetes { background-color: #326ce5 !important; }
.button-link--maven { background-color: #c71a36 !important; }
.button-link--npm { background-color: #cb3837 !important; }
.button-link--stackoverflow { background-color: #f48024 !important; }


/* RÉSEAUX SOCIAUX */
/* ========== RÉSEAUX SOCIAUX ========== */
.button-link--bluesky { background: #0085ff; }
.button-link--discord { background-color: #5865f2 !important; }
.button-link--discord { background: #5865f2; }
.button-link--facebook { background-color: #1877f2 !important; }
.button-link--facebook { background: #1877f2; }
.button-link--github { background-color: #24292e !important; }
.button-link--github { background: #24292e; }
.button-link--gitlab { background-color: #fc6d26 !important; }
.button-link--instagram { background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%); }
.button-link--instagram {  
.button-link--linkedin { background: #0a66c2; }
    background: linear-gradient(135deg, #833ab4 0%, #fd1d1d 50%, #fcb045 100%) !important;  
.button-link--mastodon { background: #6364ff; }
}
.button-link--reddit { background: #ff4500; }
.button-link--linkedin { background-color: #0a66c2 !important; }
.button-link--signal { background: #3a76f0; }
.button-link--mastodon { background-color: #6364ff !important; }
.button-link--snapchat { background: #fffc00; }
.button-link--reddit { background-color: #ff4500 !important; }
.button-link--snapchat .button-link-text { color: #000; }
.button-link--telegram { background-color: #0088cc !important; }
.button-link--telegram { background: #0088cc; }
.button-link--tiktok { background-color: #000000 !important; }
.button-link--tiktok { background: #000000; }
.button-link--twitch { background-color: #9146ff !important; }
.button-link--twitch { background: #9146ff; }
.button-link--x { background-color: #000000 !important; }
.button-link--twitter { background: #1da1f2; }
.button-link--youtube { background-color: #ff0000 !important; }
.button-link--x { background: #000000; }
.button-link--youtube { background: #ff0000; }


/* SERVICES */
/* ========== MINECRAFT MODLOADERS ========== */
.button-link--bandcamp { background: #1da0c3; }
.button-link--fabric {  
.button-link--deezer { background: #ff0092; }
    background-color: #dbd3c8 !important;  
.button-link--gitlab { background: #fc6d26; }
}
.button-link--soundcloud { background: #ff5500; }
.button-link--fabric .button-link-content a {
.button-link--spotify { background: #1db954; }
    color: #000 !important;
.button-link--steam { background: #171a21; }
}
.button-link--forge { background-color: #1e2c42 !important; }
.button-link--minecraft { background-color: #62b47a !important; }
.button-link--neoforge { background-color: #ff6b35 !important; }
.button-link--quilt { background-color: #8b5cf6 !important; }


/* JEUX */
/* ========== PLATEFORMES DE PLUGINS ========== */
.button-link--curseforge { background: #f16436; }
.button-link--bukkit { background-color: #f7931e !important; }
.button-link--minecraft { background: #62b47a; }
.button-link--curseforge { background-color: #f16436 !important; }
.button-link--modrinth { background: #1bd96a; }
.button-link--github-releases { background-color: #238636 !important; }
.button-link--spigot { background: #ed8106; }
.button-link--hangar { background-color: #0089ff !important; }
.button-link--modrinth { background-color: #1bd96a !important; }
.button-link--paper { background-color: #1a8cff !important; }
.button-link--polymart { background-color: #2196f3 !important; }
.button-link--purpur { background-color: #a855f7 !important; }
.button-link--spigot { background-color: #ed8106 !important; }


/* FINANCEMENT */
/* ========== PLATEFORMES DE FINANCEMENT ========== */
.button-link--buymeacoffee { background: #ffdd00; }
.button-link--buymeacoffee {  
.button-link--buymeacoffee .button-link-text { color: #000; }
    background-color: #ffdd00 !important;  
.button-link--helloasso { background: #4C40CF; }
}
.button-link--kofi { background: #ff5e5b; }
.button-link--buymeacoffee .button-link-content a {
.button-link--liberapay { background: #f6c915; }
    color: #000 !important;
.button-link--liberapay .button-link-text { color: #000; }
}
.button-link--opencollective { background: #7fadf2; }
.button-link--helloasso { background-color: #4C40CF !important; }
.button-link--patreon { background: #ff424d; }
.button-link--helloasso:hover { background-color: #3d33a6 !important; }
.button-link--paypal { background: linear-gradient(135deg, #0070ba 0%, #1546a0 100%); }
.button-link--kofi { background-color: #ff5e5b !important; }
.button-link--qonto { background: #1d1d1d; }
.button-link--liberapay {  
.button-link--stripe { background: #635BFF; }
    background-color: #f6c915 !important;  
}
.button-link--liberapay .button-link-content a {
    color: #000 !important;
}
.button-link--opencollective { background-color: #7fadf2 !important; }
.button-link--patreon { background-color: #ff424d !important; }
.button-link--paypal {  
    background: linear-gradient(135deg, #0070ba 0%, #1546a0 100%) !important;
}
.button-link--paypal:hover {
    background: linear-gradient(135deg, #005ea6 0%, #003087 100%) !important;  
}
.button-link--qonto { background-color: #1d1d1d !important; }
.button-link--stripe { background-color: #635BFF !important; }


/* ============================================
/* ============================================
   ALIGNEMENT
   ALIGNEMENT + WIDTH FIXE
   ============================================ */
   ============================================ */
.button-link--align-left {
.button-link--align-left {
     width: 450px;
     width: 300px;
    max-width: 100%;
     margin-right: auto;
     margin-right: auto;
     margin-left: 0;
     margin-left: 0;
Ligne 226 : Ligne 254 :


.button-link--align-center {
.button-link--align-center {
     width: 450px;
     width: 300px;
    max-width: 100%;
     margin-left: auto;
     margin-left: auto;
     margin-right: auto;
     margin-right: auto;
Ligne 233 : Ligne 260 :


.button-link--align-right {
.button-link--align-right {
     width: 450px;
     width: 300px;
    max-width: 100%;
     margin-left: auto;
     margin-left: auto;
     margin-right: 0;
     margin-right: 0;
}
/* ============================================
  HAUTEUR PERSONNALISÉE + NO-LOGO
  ============================================ */
.button-link-wrapper.button-link--no-logo .button-link-content {
    padding: 0.35rem 1rem;
}
.button-link-wrapper.button-link--no-logo .button-link-content a {
    line-height: 1.1;
}
}

Dernière version du 11 février 2026 à 20:41

/* ============================================
   VARIABLES CSS (wrapper pour TemplateStylesExtender)
   ============================================ */
.button-link-vars {
    --btn-surface-0: var(--color-surface-0);
    --btn-surface-1: var(--color-surface-1);
    --btn-surface-2: var(--color-surface-2);
    --btn-surface-3: var(--color-surface-3);
    --btn-surface-4: var(--color-surface-4);
    --btn-text-dark: var(--color-base);
    margin-bottom: 8px;
}

/* Dernier bouton sans marge */
.button-link-vars:last-child {
    margin-bottom: 0;
}

/* ============================================
   BOUTON - Base
   ============================================ */
.button-link-wrapper {
    min-height: 60px;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    position: relative;
    background-color: var(--background-color-progressive);
    display: flex;
    align-items: center;
    justify-content: center;
}

.button-link-wrapper:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
    background-color: var(--background-color-progressive--hover);
}

.button-link-content {
    width: 100%;
    height: 100%;
    text-align: center;
    padding: 1rem;
}

.button-link-content a {
    color: var(--color-inverted-primary) !important;
    text-decoration: none !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
}

/* Force la couleur même après visite */
.button-link-content a:hover,
.button-link-content a:visited,
.button-link-content a:active {
    color: var(--color-inverted-primary) !important;
}

/* CONTENEUR D'IMAGE DE TAILLE FIXE */
.button-link-content .mw-file-description {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 200px;
    height: 50px;
    margin: 0 auto 0.5rem;
    overflow: hidden;
}

/* IMAGE RESPONSIVE DANS LE CONTENEUR */
.button-link-content img {
    max-width: 100%;
    max-height: 100%;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
}

/* Masquer l'icône de lien externe */
.button-link-content a.external::after {
    display: none !important;
}

/* ============================================
   SURFACES ADAPTATIVES (style=surface-X)
   ============================================ */
.button-link--surface-0 {
    background-color: var(--btn-surface-0) !important;
}
.button-link--surface-0 .button-link-content a {
    color: var(--btn-text-dark) !important;
}

.button-link--surface-1 {
    background-color: var(--btn-surface-1) !important;
}
.button-link--surface-1 .button-link-content a {
    color: var(--btn-text-dark) !important;
}

.button-link--surface-2 {
    background-color: var(--btn-surface-2) !important;
}
.button-link--surface-2 .button-link-content a {
    color: var(--btn-text-dark) !important;
}

.button-link--surface-3 {
    background-color: var(--btn-surface-3) !important;
}
.button-link--surface-3 .button-link-content a {
    color: var(--btn-text-dark) !important;
}

.button-link--surface-4 {
    background-color: var(--btn-surface-4) !important;
}
.button-link--surface-4 .button-link-content a {
    color: var(--btn-text-dark) !important;
}

/* ============================================
   COULEUR PERSONNALISÉE (background=#FF0000)
   ============================================ */
.button-link--custom-bg {
    background-color: var(--custom-bg) !important;
}

.button-link--custom-bg:hover {
    background-color: var(--custom-bg) !important;
    filter: brightness(0.9);
}

/* ============================================
   COULEURS PRÉDÉFINIES (logos)
   ============================================ */

/* ========== COULEURS GÉNÉRIQUES ========== */
.button-link--danger { background-color: #dc3545 !important; }
.button-link--dark { background-color: var(--btn-surface-4) !important; }
.button-link--info { background-color: #17a2b8 !important; }
.button-link--light { 
    background-color: var(--btn-surface-1) !important; 
}
.button-link--light .button-link-content a {
    color: var(--btn-text-dark) !important;
}
.button-link--secondary { 
    background-color: var(--btn-surface-2) !important; 
}
.button-link--secondary .button-link-content a {
    color: var(--btn-text-dark) !important;
}
.button-link--success { background-color: #28a745 !important; }
.button-link--warning { 
    background-color: #ffc107 !important; 
}
.button-link--warning .button-link-content a {
    color: #000 !important;
}

/* ========== OUTILS DE DÉVELOPPEMENT ========== */
.button-link--codepen { background-color: #000000 !important; }
.button-link--docker { background-color: #2496ed !important; }
.button-link--gradle { background-color: #02303a !important; }
.button-link--jenkins { background-color: #d24939 !important; }
.button-link--kubernetes { background-color: #326ce5 !important; }
.button-link--maven { background-color: #c71a36 !important; }
.button-link--npm { background-color: #cb3837 !important; }
.button-link--stackoverflow { background-color: #f48024 !important; }

/* ========== RÉSEAUX SOCIAUX ========== */
.button-link--discord { background-color: #5865f2 !important; }
.button-link--facebook { background-color: #1877f2 !important; }
.button-link--github { background-color: #24292e !important; }
.button-link--gitlab { background-color: #fc6d26 !important; }
.button-link--instagram { 
    background: linear-gradient(135deg, #833ab4 0%, #fd1d1d 50%, #fcb045 100%) !important; 
}
.button-link--linkedin { background-color: #0a66c2 !important; }
.button-link--mastodon { background-color: #6364ff !important; }
.button-link--reddit { background-color: #ff4500 !important; }
.button-link--telegram { background-color: #0088cc !important; }
.button-link--tiktok { background-color: #000000 !important; }
.button-link--twitch { background-color: #9146ff !important; }
.button-link--x { background-color: #000000 !important; }
.button-link--youtube { background-color: #ff0000 !important; }

/* ========== MINECRAFT MODLOADERS ========== */
.button-link--fabric { 
    background-color: #dbd3c8 !important; 
}
.button-link--fabric .button-link-content a {
    color: #000 !important;
}
.button-link--forge { background-color: #1e2c42 !important; }
.button-link--minecraft { background-color: #62b47a !important; }
.button-link--neoforge { background-color: #ff6b35 !important; }
.button-link--quilt { background-color: #8b5cf6 !important; }

/* ========== PLATEFORMES DE PLUGINS ========== */
.button-link--bukkit { background-color: #f7931e !important; }
.button-link--curseforge { background-color: #f16436 !important; }
.button-link--github-releases { background-color: #238636 !important; }
.button-link--hangar { background-color: #0089ff !important; }
.button-link--modrinth { background-color: #1bd96a !important; }
.button-link--paper { background-color: #1a8cff !important; }
.button-link--polymart { background-color: #2196f3 !important; }
.button-link--purpur { background-color: #a855f7 !important; }
.button-link--spigot { background-color: #ed8106 !important; }

/* ========== PLATEFORMES DE FINANCEMENT ========== */
.button-link--buymeacoffee { 
    background-color: #ffdd00 !important; 
}
.button-link--buymeacoffee .button-link-content a {
    color: #000 !important;
}
.button-link--helloasso { background-color: #4C40CF !important; }
.button-link--helloasso:hover { background-color: #3d33a6 !important; }
.button-link--kofi { background-color: #ff5e5b !important; }
.button-link--liberapay { 
    background-color: #f6c915 !important; 
}
.button-link--liberapay .button-link-content a {
    color: #000 !important;
}
.button-link--opencollective { background-color: #7fadf2 !important; }
.button-link--patreon { background-color: #ff424d !important; }
.button-link--paypal { 
    background: linear-gradient(135deg, #0070ba 0%, #1546a0 100%) !important; 
}
.button-link--paypal:hover { 
    background: linear-gradient(135deg, #005ea6 0%, #003087 100%) !important; 
}
.button-link--qonto { background-color: #1d1d1d !important; }
.button-link--stripe { background-color: #635BFF !important; }

/* ============================================
   ALIGNEMENT + WIDTH FIXE
   ============================================ */
.button-link--align-left {
    width: 300px;
    margin-right: auto;
    margin-left: 0;
}

.button-link--align-center {
    width: 300px;
    margin-left: auto;
    margin-right: auto;
}

.button-link--align-right {
    width: 300px;
    margin-left: auto;
    margin-right: 0;
}

/* ============================================
   HAUTEUR PERSONNALISÉE + NO-LOGO
   ============================================ */
.button-link-wrapper.button-link--no-logo .button-link-content {
    padding: 0.35rem 1rem;
}

.button-link-wrapper.button-link--no-logo .button-link-content a {
    line-height: 1.1;
}
Les témoins (''cookies'') nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de témoins.