« Modèle:SocialButton/styles.css » : différence entre les versions
De Nefald
Autres actions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
| (33 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 9 : | Ligne 9 : | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
gap: | gap: 10px; | ||
padding: | padding: 12px 16px; | ||
border-radius: 12px; | border-radius: 12px; | ||
background: transparent; | background: transparent; | ||
box-shadow: none; | box-shadow: none; | ||
overflow: | |||
/* IMPORTANT : évite le scroll/grey wrapper du skin */ | |||
flex-wrap: nowrap; | |||
overflow: hidden; | |||
} | } | ||
| Ligne 25 : | Ligne 28 : | ||
font-size: 1.05rem; | font-size: 1.05rem; | ||
white-space: nowrap; | white-space: nowrap; | ||
flex: 0 0 auto; | |||
} | } | ||
/* Spacer */ | /* (Spacer supprimé) */ | ||
.sb-spacer{ | .sb-spacer{ display: none !important; } | ||
/* Groupes */ | /* Groupes */ | ||
| Ligne 34 : | Ligne 38 : | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
gap: | gap: 8px; | ||
flex-wrap: nowrap; | flex-wrap: nowrap; | ||
flex: 0 0 auto; | |||
} | } | ||
| Ligne 53 : | Ligne 58 : | ||
box-shadow: 0 2px 8px rgba(0,0,0,.10); | box-shadow: 0 2px 8px rgba(0,0,0,.10); | ||
transition: all .3s cubic-bezier(.4,0,.2,1); | transition: all .3s cubic-bezier(.4,0,.2,1); | ||
flex: 0 0 auto; | |||
} | } | ||
| Ligne 62 : | Ligne 69 : | ||
background: transparent; | background: transparent; | ||
pointer-events: none; | pointer-events: none; | ||
} | } | ||
| Ligne 73 : | Ligne 80 : | ||
.sb-icon{ width: 45px; height: 45px; } | .sb-icon{ width: 45px; height: 45px; } | ||
/* | .sb-btn.button-link--tiktok img{ | ||
transform: scale(1.8); | |||
transform-origin: center; | |||
} | |||
/* Support : base */ | |||
.sb-support{ | .sb-support{ | ||
height: 45px; | height: 45px; /* même hauteur que les icônes */ | ||
padding: 0; | padding: 0; | ||
width: auto; | width: auto; | ||
flex: 0 0 auto; | flex: 0 0 auto; | ||
| Ligne 108 : | Ligne 120 : | ||
} | } | ||
/* | /* ========================================= | ||
HELLOASSO — compact MAIS logo au-dessus du texte | |||
.sb- | ========================================= */ | ||
.sb-buttons--support{ | |||
display: flex; | |||
gap: 8px; | |||
flex: 0 0 auto; | |||
} | } | ||
.sb-buttons--support .sb-btn.sb-support{ | |||
.sb- | flex: 0 0 auto; | ||
width: | width: 140px; /* légèrement + large pour stabiliser la colonne */ | ||
height: 45px; | |||
} | |||
.sb-buttons--support .sb-btn.sb-support > a{ | |||
width: 100% !important; | |||
display: flex; | |||
flex-direction: column; /* logo au-dessus */ | |||
justify-content: center; | |||
align-items: center; | align-items: center; | ||
padding: 0 12px !important; /* compact horizontal */ | |||
line-height: 1; | gap: 2px; | ||
line-height: 1; | |||
text-align: center; | |||
} | } | ||
/* Logo | /* Logo : un peu moins "zoomé" pour éviter l’écrasement */ | ||
.sb- | .sb-buttons--support .sb-btn.sb-support img{ | ||
width: | height: 18px !important; | ||
width: auto !important; | |||
transform: scale(1.55); /* avant ~1.9/2 : dézoom */ | |||
transform-origin: center; | |||
display: block; | display: block; | ||
margin: 0 !important; | margin: 0 !important; | ||
} | } | ||
/* Texte : compact et lisible */ | |||
.sb-buttons--support .sb-btn.sb-support b, | |||
.sb-buttons--support .sb-btn.sb-support strong{ | |||
display: block; | |||
margin: 0 !important; | |||
line-height: 1; | |||
font-size: 0.66rem; | |||
font-weight: 600; | |||
white-space: nowrap; | |||
} | |||
/* ========================================= | /* ========================================= | ||
| Ligne 154 : | Ligne 191 : | ||
} | } | ||
/* Images */ | /* Images icônes réseaux sociaux */ | ||
.sb-icon img{ | .sb-icon img{ | ||
width: 28px !important; | width: 28px !important; | ||
| Ligne 161 : | Ligne 198 : | ||
display: block; | display: block; | ||
background: transparent !important; | background: transparent !important; | ||
} | } | ||
| Ligne 207 : | Ligne 228 : | ||
.sb-footer .sb-btn.button-link--tiktok:before { background: #000; } | .sb-footer .sb-btn.button-link--tiktok:before { background: #000; } | ||
.sb-footer .sb-btn.button-link--helloasso:before { background: #5a2ca0; } | .sb-footer .sb-btn.button-link--helloasso:before { background: #5a2ca0; } | ||
/* ========================================= | |||
COMPTEURS (à droite) — compact + anti-style skin | |||
========================================= */ | |||
.sb-counters{ | |||
margin-left: auto; /* pousse à droite */ | |||
display: flex; | |||
align-items: center; | |||
gap: 10px; | |||
white-space: nowrap; | |||
flex: 0 0 auto; | |||
/* évite toute boîte scrollable ajoutée */ | |||
min-width: 0; | |||
} | |||
/* Reset ciblé : on neutralise l'apparence "code" sans casser le reste */ | |||
.sb-counters, | |||
.sb-counters *{ | |||
font-family: inherit !important; | |||
background: transparent !important; | |||
border: 0 !important; | |||
box-shadow: none !important; | |||
text-decoration: none !important; | |||
} | |||
/* Si le skin injecte code/pre */ | |||
.sb-counters code, | |||
.sb-counters pre{ | |||
font-family: inherit !important; | |||
background: transparent !important; | |||
padding: 0 !important; | |||
border: 0 !important; | |||
} | |||
/* Cartes compteurs */ | |||
.sb-counter{ | |||
display: flex; | |||
align-items: center; | |||
gap: 6px; | |||
height: 45px; | |||
padding: 0 8px; /* compact pour tenir en 1 ligne */ | |||
border-radius: 12px; | |||
background: rgba(0,0,0,.05); | |||
line-height: 1; | |||
font-size: 0.82rem; | |||
} | |||
.sb-counter__num{ | |||
font-weight: 800; | |||
font-size: 1.0rem; | |||
} | |||
.sb-counter__label{ | |||
font-weight: 600; | |||
opacity: .7; | |||
} | |||
/* ========================================= | /* ========================================= | ||
| Ligne 216 : | Ligne 297 : | ||
flex-wrap: wrap; | flex-wrap: wrap; | ||
align-items: flex-start; | align-items: flex-start; | ||
overflow: visible; /* on autorise le wrap sur petit écran */ | |||
} | } | ||
.sb-buttons{ flex-wrap: wrap; } | .sb-buttons{ flex-wrap: wrap; } | ||
/* compteurs passent sur la ligne suivante, sans casser */ | |||
.sb-counters{ | |||
margin-left: 0; | |||
width: 100%; | |||
justify-content: flex-start; | |||
margin-top: 6px; | |||
} | |||
} | |||
/* Empêche les comportements de wrapper/scroll du skin sur la fin de ligne */ | |||
.sb-footer{ | |||
overflow: hidden; /* au lieu de visible */ | |||
} | } | ||
/* | /* Compteurs à droite : compact et stable */ | ||
.sb- | .sb-counters{ | ||
.sb- | display: flex; | ||
font- | align-items: center; | ||
font- | gap: 10px; | ||
white-space: nowrap; | |||
flex: 0 0 auto; | |||
} | |||
/* Style visuel compteurs */ | |||
.sb-counter{ | |||
display: flex; | |||
align-items: center; | |||
gap: 6px; | |||
height: 45px; | |||
padding: 0 10px; | |||
border-radius: 12px; | |||
background: rgba(0,0,0,.05); | |||
line-height: 1; | |||
font-size: 0.85rem; | |||
} | |||
.sb-counter__num{ | |||
font-weight: 800; | |||
font-size: 1.0rem; | |||
} | |||
.sb-counter__label{ | |||
font-weight: 600; | |||
opacity: .7; | |||
} | |||
/* Neutralise uniquement les styles "code/copy" SI un wrapper est injecté DANS les compteurs */ | |||
.sb-counters code, | |||
.sb-counters pre{ | |||
background: transparent !important; | |||
border: 0 !important; | |||
padding: 0 !important; | |||
box-shadow: none !important; | |||
font-family: inherit !important; | |||
} | |||
/* On évite que des décorations de lien/skin polluent les compteurs */ | |||
.sb-counters a:before, | |||
.sb-counters a:after, | |||
.sb-counters .external:before, | |||
.sb-counters .external:after{ | |||
display: none !important; | |||
content: none !important; | |||
} | |||
/* ========================================= | |||
COMPTEURS — neutraliser le gadget/extension "copier" | |||
(sans toucher aux boutons) | |||
========================================= */ | |||
.sb-counters{ | |||
-webkit-user-select: none; | |||
user-select: none; | |||
} | |||
/* Si le gadget s'accroche à code/pre injectés, on les neutralise */ | |||
.sb-counters code, | |||
.sb-counters pre, | |||
.sb-counters kbd, | |||
.sb-counters samp{ | |||
background: transparent !important; | |||
border: 0 !important; | |||
padding: 0 !important; | |||
box-shadow: none !important; | |||
font-family: inherit !important; | |||
} | |||
/* Certains gadgets posent un bouton via pseudo-éléments / enfants */ | |||
.sb-counters [class*="copy"], | |||
.sb-counters .copy-button, | |||
.sb-counters .mw-copybutton, | |||
.sb-counters .mw-clipboard-button{ | |||
display: none !important; | |||
} | |||
/* ========================================= | |||
Séparateurs verticaux entre les 3 sections | |||
========================================= */ | |||
.sb-buttons--icons, | |||
.sb-buttons--support{ | |||
position: relative; | |||
} | |||
/* barre après Réseaux */ | |||
.sb-buttons--icons::after{ | |||
content: ""; | |||
display: block; | |||
width: 2px; | |||
height: 36px; /* ajuste si tu veux plus/moins haut */ | |||
background: #000; | |||
border-radius: 2px; | |||
margin: 0 14px; /* espace autour de la barre */ | |||
} | |||
/* barre après HelloAsso */ | |||
.sb-buttons--support::after{ | |||
content: ""; | |||
display: block; | |||
width: 2px; | |||
height: 36px; | |||
background: #000; | |||
border-radius: 2px; | |||
margin: 0 14px; | |||
} | |||
/* sur mobile (wrap), on enlève pour éviter des barres perdues */ | |||
@media (max-width: 900px){ | |||
.sb-buttons--icons::after, | |||
.sb-buttons--support::after{ | |||
display: none; | |||
} | |||
} | } | ||
Dernière version du 5 février 2026 à 11:52
/* =========================================
BANDEAU FOOTER SOCIAL
========================================= */
.sb-footer{
width: 100%;
box-sizing: border-box;
display: flex;
align-items: center;
gap: 10px;
padding: 12px 16px;
border-radius: 12px;
background: transparent;
box-shadow: none;
/* IMPORTANT : évite le scroll/grey wrapper du skin */
flex-wrap: nowrap;
overflow: hidden;
}
/* Titres */
.sb-title{
color: #000 !important;
font-weight: 700;
font-size: 1.05rem;
white-space: nowrap;
flex: 0 0 auto;
}
/* (Spacer supprimé) */
.sb-spacer{ display: none !important; }
/* Groupes */
.sb-buttons{
display: flex;
align-items: center;
gap: 8px;
flex-wrap: nowrap;
flex: 0 0 auto;
}
/* =========================================
BOUTONS (fond garanti via :before)
========================================= */
.sb-footer .sb-btn{
position: relative;
border-radius: 12px;
overflow: hidden;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 2px 8px rgba(0,0,0,.10);
transition: all .3s cubic-bezier(.4,0,.2,1);
flex: 0 0 auto;
}
.sb-footer .sb-btn:before{
content: "";
position: absolute;
top: 0; right: 0; bottom: 0; left: 0;
z-index: 0;
background: transparent;
pointer-events: none;
}
.sb-footer .sb-btn:hover{
transform: translateY(-2px);
box-shadow: 0 4px 16px rgba(0,0,0,.20);
}
/* Tailles */
.sb-icon{ width: 45px; height: 45px; }
.sb-btn.button-link--tiktok img{
transform: scale(1.8);
transform-origin: center;
}
/* Support : base */
.sb-support{
height: 45px; /* même hauteur que les icônes */
padding: 0;
width: auto;
flex: 0 0 auto;
}
/* =========================================
Lien plein bouton, au-dessus du fond
========================================= */
.sb-footer .sb-btn > a{
position: relative;
z-index: 1;
display: flex;
align-items: center;
justify-content: center;
gap: 10px;
width: 100%;
height: 100%;
margin: 0 !important;
padding: 0 !important;
color: #fff !important;
text-decoration: none !important;
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
}
/* =========================================
HELLOASSO — compact MAIS logo au-dessus du texte
========================================= */
.sb-buttons--support{
display: flex;
gap: 8px;
flex: 0 0 auto;
}
.sb-buttons--support .sb-btn.sb-support{
flex: 0 0 auto;
width: 140px; /* légèrement + large pour stabiliser la colonne */
height: 45px;
}
.sb-buttons--support .sb-btn.sb-support > a{
width: 100% !important;
display: flex;
flex-direction: column; /* logo au-dessus */
justify-content: center;
align-items: center;
padding: 0 12px !important; /* compact horizontal */
gap: 2px;
line-height: 1;
text-align: center;
}
/* Logo : un peu moins "zoomé" pour éviter l’écrasement */
.sb-buttons--support .sb-btn.sb-support img{
height: 18px !important;
width: auto !important;
transform: scale(1.55); /* avant ~1.9/2 : dézoom */
transform-origin: center;
display: block;
margin: 0 !important;
}
/* Texte : compact et lisible */
.sb-buttons--support .sb-btn.sb-support b,
.sb-buttons--support .sb-btn.sb-support strong{
display: block;
margin: 0 !important;
line-height: 1;
font-size: 0.66rem;
font-weight: 600;
white-space: nowrap;
}
/* =========================================
Neutraliser wrappers MediaWiki (fichiers)
========================================= */
.sb-footer .sb-btn .mw-file-description,
.sb-footer .sb-btn .mw-file-element,
.sb-footer .sb-btn .mw-file-description a,
.sb-footer .sb-btn .mw-file-element a{
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
padding: 0 !important;
margin: 0 !important;
}
/* Images icônes réseaux sociaux */
.sb-icon img{
width: 28px !important;
height: 28px !important;
object-fit: contain;
display: block;
background: transparent !important;
}
/* =========================================
Supprimer icônes externes (skins)
========================================= */
.sb-footer a:after,
.sb-footer a:before,
.sb-footer a.external:after,
.sb-footer a.external:before{
display: none !important;
content: none !important;
}
.sb-footer a.external{
background-image: none !important;
padding-right: 0 !important;
}
/* =========================================
COULEURS (fond via :before)
========================================= */
.sb-footer .sb-btn.button-link--discord:before { background: #5865f2; }
.sb-footer .sb-btn.button-link--twitter:before { background: #1da1f2; }
.sb-footer .sb-btn.button-link--instagram:before {
background: linear-gradient(45deg,#f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);
}
.sb-footer .sb-btn.button-link--tiktok:before { background: #000; }
.sb-footer .sb-btn.button-link--helloasso:before { background: #5a2ca0; }
/* =========================================
COMPTEURS (à droite) — compact + anti-style skin
========================================= */
.sb-counters{
margin-left: auto; /* pousse à droite */
display: flex;
align-items: center;
gap: 10px;
white-space: nowrap;
flex: 0 0 auto;
/* évite toute boîte scrollable ajoutée */
min-width: 0;
}
/* Reset ciblé : on neutralise l'apparence "code" sans casser le reste */
.sb-counters,
.sb-counters *{
font-family: inherit !important;
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
text-decoration: none !important;
}
/* Si le skin injecte code/pre */
.sb-counters code,
.sb-counters pre{
font-family: inherit !important;
background: transparent !important;
padding: 0 !important;
border: 0 !important;
}
/* Cartes compteurs */
.sb-counter{
display: flex;
align-items: center;
gap: 6px;
height: 45px;
padding: 0 8px; /* compact pour tenir en 1 ligne */
border-radius: 12px;
background: rgba(0,0,0,.05);
line-height: 1;
font-size: 0.82rem;
}
.sb-counter__num{
font-weight: 800;
font-size: 1.0rem;
}
.sb-counter__label{
font-weight: 600;
opacity: .7;
}
/* =========================================
RESPONSIVE
========================================= */
@media (max-width: 900px){
.sb-footer{
flex-wrap: wrap;
align-items: flex-start;
overflow: visible; /* on autorise le wrap sur petit écran */
}
.sb-buttons{ flex-wrap: wrap; }
/* compteurs passent sur la ligne suivante, sans casser */
.sb-counters{
margin-left: 0;
width: 100%;
justify-content: flex-start;
margin-top: 6px;
}
}
/* Empêche les comportements de wrapper/scroll du skin sur la fin de ligne */
.sb-footer{
overflow: hidden; /* au lieu de visible */
}
/* Compteurs à droite : compact et stable */
.sb-counters{
display: flex;
align-items: center;
gap: 10px;
white-space: nowrap;
flex: 0 0 auto;
}
/* Style visuel compteurs */
.sb-counter{
display: flex;
align-items: center;
gap: 6px;
height: 45px;
padding: 0 10px;
border-radius: 12px;
background: rgba(0,0,0,.05);
line-height: 1;
font-size: 0.85rem;
}
.sb-counter__num{
font-weight: 800;
font-size: 1.0rem;
}
.sb-counter__label{
font-weight: 600;
opacity: .7;
}
/* Neutralise uniquement les styles "code/copy" SI un wrapper est injecté DANS les compteurs */
.sb-counters code,
.sb-counters pre{
background: transparent !important;
border: 0 !important;
padding: 0 !important;
box-shadow: none !important;
font-family: inherit !important;
}
/* On évite que des décorations de lien/skin polluent les compteurs */
.sb-counters a:before,
.sb-counters a:after,
.sb-counters .external:before,
.sb-counters .external:after{
display: none !important;
content: none !important;
}
/* =========================================
COMPTEURS — neutraliser le gadget/extension "copier"
(sans toucher aux boutons)
========================================= */
.sb-counters{
-webkit-user-select: none;
user-select: none;
}
/* Si le gadget s'accroche à code/pre injectés, on les neutralise */
.sb-counters code,
.sb-counters pre,
.sb-counters kbd,
.sb-counters samp{
background: transparent !important;
border: 0 !important;
padding: 0 !important;
box-shadow: none !important;
font-family: inherit !important;
}
/* Certains gadgets posent un bouton via pseudo-éléments / enfants */
.sb-counters [class*="copy"],
.sb-counters .copy-button,
.sb-counters .mw-copybutton,
.sb-counters .mw-clipboard-button{
display: none !important;
}
/* =========================================
Séparateurs verticaux entre les 3 sections
========================================= */
.sb-buttons--icons,
.sb-buttons--support{
position: relative;
}
/* barre après Réseaux */
.sb-buttons--icons::after{
content: "";
display: block;
width: 2px;
height: 36px; /* ajuste si tu veux plus/moins haut */
background: #000;
border-radius: 2px;
margin: 0 14px; /* espace autour de la barre */
}
/* barre après HelloAsso */
.sb-buttons--support::after{
content: "";
display: block;
width: 2px;
height: 36px;
background: #000;
border-radius: 2px;
margin: 0 14px;
}
/* sur mobile (wrap), on enlève pour éviter des barres perdues */
@media (max-width: 900px){
.sb-buttons--icons::after,
.sb-buttons--support::after{
display: none;
}
}