MediaWiki:Common.css: Difference between revisions
MediaWiki interface page
More actions
No edit summary |
No edit summary |
||
| Line 1: | Line 1: | ||
/* ---------- IMAGE-ONLY BUTTONS – | /* ---------- IMAGE-ONLY BUTTONS – 4 PER ROW + TIGHT SPACING ---------- */ | ||
.cat-grid { | .cat-grid { | ||
display: flex; | display: flex; | ||
flex-wrap: wrap; | flex-wrap: wrap; | ||
justify-content: center; | justify-content: center; | ||
gap: | gap: 16px; /* ← CLOSER HORIZONTAL & VERTICAL */ | ||
max-width: 960px; | max-width: 960px; | ||
margin: | margin: 30px auto; | ||
padding: 0 12px; | padding: 0 12px; | ||
} | } | ||
| Line 21: | Line 21: | ||
background: none !important; | background: none !important; | ||
box-shadow: none !important; | box-shadow: none !important; | ||
overflow: hidden !important; | overflow: hidden !important; | ||
transition: transform 0.25s ease; | transition: transform 0.25s ease; | ||
cursor: pointer; | cursor: pointer; | ||
/* ← MAX 4 PER ROW: 25% width minus gap */ | |||
flex: 0 1 calc(25% - 12px); /* 4 × (25% - gap/4) */ | |||
min-width: 180px; /* prevent too small */ | |||
} | } | ||
/* HOVER: lift | /* HOVER: lift */ | ||
.cat-button:hover, | .cat-button:hover, | ||
.cat-button:focus { | .cat-button:focus { | ||
| Line 33: | Line 37: | ||
} | } | ||
/* IMAGE: | /* IMAGE: zoom inside rounded */ | ||
.cat-button img { | .cat-button img { | ||
width: 100%; | width: 100%; | ||
| Line 41: | Line 45: | ||
padding: 0; | padding: 0; | ||
border: 0; | border: 0; | ||
border-radius: 10px; | border-radius: 10px; | ||
vertical-align: top; | vertical-align: top; | ||
transition: transform 0.3s ease; | transition: transform 0.3s ease; | ||
transform-origin: center center; | transform-origin: center center; | ||
} | } | ||
.cat-button:hover img { | .cat-button:hover img { | ||
transform: scale(1.08); | transform: scale(1.08); | ||
} | } | ||
/* TEXT OVERLAY: CLEAN BLACK OUTLINE | /* TEXT OVERLAY: BOLD + CLEAN BLACK OUTLINE */ | ||
.cat-overlay { | .cat-overlay { | ||
position: absolute; | position: absolute; | ||
| Line 68: | Line 72: | ||
transition: background 0.3s ease, text-shadow 0.3s ease; | transition: background 0.3s ease, text-shadow 0.3s ease; | ||
text-shadow: | text-shadow: | ||
-1.2px -1.2px 0 #000, | -1.2px -1.2px 0 #000, | ||
| Line 81: | Line 84: | ||
} | } | ||
.cat-button:hover .cat-overlay { | .cat-button:hover .cat-overlay { | ||
background: transparent; | background: transparent; | ||
| Line 96: | Line 98: | ||
} | } | ||
/* RESPONSIVE */ | /* RESPONSIVE: 2 per row on tablets, 1 on mobile */ | ||
@media (max-width: 768px) { | @media (max-width: 768px) { | ||
.cat-grid { gap: | .cat-grid { gap: 12px; } /* ← EVEN TIGHTER when stacked */ | ||
.cat- | .cat-button { flex: 0 1 calc(50% - 9px); } /* 2 per row */ | ||
} | |||
@media (max-width: 480px) { | |||
.cat-button { flex: 0 1 100%; } /* 1 per row */ | |||
.cat-overlay { font-size: 1em; } | |||
.cat-button | |||
1 | |||
} | } | ||
Revision as of 10:44, 16 November 2025
/* ---------- IMAGE-ONLY BUTTONS – 4 PER ROW + TIGHT SPACING ---------- */
.cat-grid {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 16px; /* ← CLOSER HORIZONTAL & VERTICAL */
max-width: 960px;
margin: 30px auto;
padding: 0 12px;
}
/* DIV button – FULL RESET + ROUNDED + ZOOM CONTAINER */
.cat-button {
position: relative;
display: block !important;
line-height: 0 !important;
margin: 0 !important;
padding: 0 !important;
border: none !important;
border-radius: 10px !important;
background: none !important;
box-shadow: none !important;
overflow: hidden !important;
transition: transform 0.25s ease;
cursor: pointer;
/* ← MAX 4 PER ROW: 25% width minus gap */
flex: 0 1 calc(25% - 12px); /* 4 × (25% - gap/4) */
min-width: 180px; /* prevent too small */
}
/* HOVER: lift */
.cat-button:hover,
.cat-button:focus {
transform: translateY(-4px);
outline: none !important;
}
/* IMAGE: zoom inside rounded */
.cat-button img {
width: 100%;
height: auto;
display: block;
margin: 0;
padding: 0;
border: 0;
border-radius: 10px;
vertical-align: top;
transition: transform 0.3s ease;
transform-origin: center center;
}
.cat-button:hover img {
transform: scale(1.08);
}
/* TEXT OVERLAY: BOLD + CLEAN BLACK OUTLINE */
.cat-overlay {
position: absolute;
inset: 0;
display: flex;
align-items: center;
justify-content: center;
color: white;
font-weight: 700 !important;
font-size: 1.1em;
text-align: center;
padding: 8px;
pointer-events: none;
background: rgba(0, 0, 0, 0.08);
border-radius: 10px;
transition: background 0.3s ease, text-shadow 0.3s ease;
text-shadow:
-1.2px -1.2px 0 #000,
1.2px -1.2px 0 #000,
-1.2px 1.2px 0 #000,
1.2px 1.2px 0 #000,
-1.2px 0 0 #000,
1.2px 0 0 #000,
0 -1.2px 0 #000,
0 1.2px 0 #000,
0 0 6px rgba(0,0,0,0.6);
}
.cat-button:hover .cat-overlay {
background: transparent;
text-shadow:
-1.5px -1.5px 0 #000,
1.5px -1.5px 0 #000,
-1.5px 1.5px 0 #000,
1.5px 1.5px 0 #000,
-1.5px 0 0 #000,
1.5px 0 0 #000,
0 -1.5px 0 #000,
0 1.5px 0 #000,
0 0 10px rgba(0,0,0,0.7);
}
/* RESPONSIVE: 2 per row on tablets, 1 on mobile */
@media (max-width: 768px) {
.cat-grid { gap: 12px; } /* ← EVEN TIGHTER when stacked */
.cat-button { flex: 0 1 calc(50% - 9px); } /* 2 per row */
}
@media (max-width: 480px) {
.cat-button { flex: 0 1 100%; } /* 1 per row */
.cat-overlay { font-size: 1em; }
}