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)
Aucun résumé des modifications
Balise : Révoqué
Hiob (discussion | contributions)
mAucun résumé des modifications
 
(15 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
/* ============================================
/* ============================================
   WRAPPER PRINCIPAL
   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 {
.button-link-wrapper {
     min-height: 80px;
     min-height: 60px;
     border-radius: 12px;
     border-radius: 12px;
     overflow: hidden;
     overflow: hidden;
Ligne 10 : 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: stretch; /* ⬅️ CHANGÉ */
     align-items: center;
    justify-content: center;
}
}


Ligne 18 : 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);
}
}
/* ============================================
  CONTENU PRINCIPAL
  ============================================ */


.button-link-content {
.button-link-content {
     width: 100%;
     width: 100%;
     display: flex; /* ⬅️ AJOUTÉ */
     height: 100%;
     align-items: center; /* ⬅️ AJOUTÉ */
     text-align: center;
    padding: 1rem;
}
}


.button-link-content a {
.button-link-content a {
     color: white !important;
     color: var(--color-inverted-primary) !important;
     text-decoration: none !important;
     text-decoration: none !important;
     display: flex;
     display: flex;
    flex-direction: column;
     align-items: center;
     align-items: center;
     width: 100%;
     justify-content: center;
     padding: 1rem;
     height: 100%;
    gap: 1rem; /* ⬅️ Espacement entre image et texte */
}
}


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


/* ============================================
/* CONTENEUR D'IMAGE DE TAILLE FIXE */
  CONTENEUR IMAGE
.button-link-content .mw-file-description {
  ============================================ */
 
.button-link-image-container {
     display: flex;
     display: flex;
     align-items: center;
     align-items: center;
     justify-content: center;
     justify-content: center;
     flex-shrink: 0;
     width: 200px;
     width: 120px; /* ⬅️ Réduit */
     height: 50px;
     height: 100%; /* ⬅️ Prend toute la hauteur disponible */
     margin: 0 auto 0.5rem;
     overflow: hidden;
     overflow: hidden;
    background: transparent;
}
}


.button-link-image-container .mw-file-description {
/* IMAGE RESPONSIVE DANS LE CONTENEUR */
    display: flex;
.button-link-content img {
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0.5rem; /* ⬅️ Petit padding interne */
}
 
.button-link-image-container img {
     max-width: 100%;
     max-width: 100%;
     max-height: 100%;
     max-height: 100%;
Ligne 75 : Ligne 81 :
     height: auto !important;
     height: auto !important;
     object-fit: contain;
     object-fit: contain;
    display: block;
     filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
     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;
}
}


/* ============================================
/* ============================================
   TEXTE DU BOUTON
   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-text {
.button-link--surface-2 {
     flex: 1; /* ⬅️ Prend l'espace restant */
     background-color: var(--btn-surface-2) !important;
     display: flex;
}
     flex-direction: column;
.button-link--surface-2 .button-link-content a {
    justify-content: center;
     color: var(--btn-text-dark) !important;
     text-align: left;
}
    min-width: 0; /* ⬅️ Permet au texte de se réduire si besoin */
 
.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-text strong {
.button-link--surface-4 {
     font-size: 1.1em;
     background-color: var(--btn-surface-4) !important;
     display: block;
}
    margin-bottom: 0.25rem;
.button-link--surface-4 .button-link-content a {
     color: var(--btn-text-dark) !important;
}
}


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


/* QR Code à GAUCHE (défaut) */
.button-link--custom-bg:hover {
.button-link--imagepos-left .button-link-content a {
    background-color: var(--custom-bg) !important;
     flex-direction: row;
     filter: brightness(0.9);
}
}


.button-link--imagepos-left .button-link-text {
/* ============================================
     text-align: left;
  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; }


/* QR Code à DROITE */
/* ========== RÉSEAUX SOCIAUX ========== */
.button-link--imagepos-right .button-link-content a {
.button-link--discord { background-color: #5865f2 !important; }
     flex-direction: row-reverse;
.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; }


.button-link--imagepos-right .button-link-text {
/* ========== MINECRAFT MODLOADERS ========== */
     text-align: right;
.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; }


/* QR Code CENTRÉ (pas de texte) */
/* ========== PLATEFORMES DE PLUGINS ========== */
.button-link--imagepos-center .button-link-content a {
.button-link--bukkit { background-color: #f7931e !important; }
     justify-content: center;
.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--imagepos-center .button-link-image-container {
.button-link--patreon { background-color: #ff424d !important; }
     width: 200px; /* ⬅️ Plus grand quand centré */
.button-link--paypal {  
     background: linear-gradient(135deg, #0070ba 0%, #1546a0 100%) !important;  
}
}
 
.button-link--paypal:hover {  
.button-link--imagepos-center .button-link-text {
     background: linear-gradient(135deg, #005ea6 0%, #003087 100%) !important;  
     display: none;
}
}
.button-link--qonto { background-color: #1d1d1d !important; }
.button-link--stripe { background-color: #635BFF !important; }


/* ============================================
/* ============================================
   ALIGNEMENT DU BOUTON
   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 145 : 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 152 : 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;
}
}


/* Masquer l'icône de lien externe */
/* ============================================
.button-link-content a.external::after {
  HAUTEUR PERSONNALISÉE + NO-LOGO
     display: none !important;
  ============================================ */
.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.