Modul:Navpills/styles.css: Porovnání verzí
Z Bradavice Online Wiki
More actions
Bez shrnutí editace |
Bez shrnutí editace |
||
| Řádek 8: | Řádek 8: | ||
.template-navpill { | .template-navpill { | ||
position: relative; | |||
border: 1px solid var( --border-color-base ); | |||
border-radius: var( --border-radius-medium ); | border-radius: var( --border-radius-medium ); | ||
font-weight: var( --font-weight-medium ); | font-weight: var( --font-weight-medium ); | ||
line-height: var( --line-height-xx-small ); | line-height: var( --line-height-xx-small ); | ||
overflow: hidden; | overflow: hidden; | ||
/* --- přidáno: hladké přechody pro hover efekty --- */ | |||
transition: | |||
transform 160ms ease, | |||
box-shadow 160ms ease, | |||
border-color 160ms ease, | |||
background-color 160ms ease; | |||
} | |||
/* jemný „sheen“ pruh přes kartu (viditelný i přes pozadí) */ | |||
.template-navpill::before{ | |||
content: ""; | |||
position: absolute; | |||
inset: 0; | |||
pointer-events: none; | |||
/* světelný pruh, který přelétne přes kartu */ | |||
background: linear-gradient(120deg, transparent 20%, rgba(255,255,255,.28) 40%, transparent 60%); | |||
transform: translateX(-125%); | |||
transition: transform 420ms ease; | |||
/* ať je pruh vidět v dark i light */ | |||
mix-blend-mode: screen; | |||
z-index: 1; | |||
} | } | ||
.template-navpill-background { | .template-navpill-background { | ||
position: absolute; | |||
inset: 0; | |||
pointer-events: none; | |||
z-index: 0; /* pod sheenem i textem */ | |||
} | } | ||
.template-navpill-background:after { | .template-navpill-background:after { | ||
content: ''; | |||
position: absolute; | position: absolute; | ||
inset: 0; | inset: 0; | ||
| Řádek 30: | Řádek 52: | ||
.template-navpill-background img { | .template-navpill-background img { | ||
width: 100%; | |||
height: 100%; | |||
object-fit: cover; | |||
transition: var( --transition-hover ); | |||
transition-property: transform; | transition-property: transform; | ||
} | } | ||
/* zachováno původní chování */ | |||
.template-navpill:hover .template-navpill-background::after { | .template-navpill:hover .template-navpill-background::after { | ||
transform: translateX( -100% ); | transform: translateX( -100% ); | ||
| Řádek 42: | Řádek 65: | ||
.template-navpill:hover .template-navpill-background img { | .template-navpill:hover .template-navpill-background img { | ||
transform: scale( 1.1 ); | |||
} | } | ||
.template-navpill > a { | .template-navpill > a { | ||
position: relative; | |||
padding: 0 var( --space-md ); | |||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
color: var( --color-emphasized ); | color: var( --color-emphasized ); | ||
text-decoration: none; | text-decoration: none; | ||
height: 100%; | |||
z-index: 2; /* nad pozadím i sheenem */ | |||
} | } | ||
.template-navpill > .template-navpill-background + a { | .template-navpill > .template-navpill-background + a { | ||
color: #fff; | |||
text-shadow: -1px 0 .2em #000, 0 1px .2em #000, 1px 0 .2em #000, 0 -1px .2em #000; | |||
} | } | ||
/* zachováno původní chování pozadí na hover/active */ | |||
.template-navpill:hover { | .template-navpill:hover { | ||
background: var( --background-color-button-quiet--hover ); | background: var( --background-color-button-quiet--hover ); | ||
| Řádek 68: | Řádek 93: | ||
} | } | ||
/* --- přidáno: viditelné hover efekty bez zásahu do původního --- */ | |||
.template-navpill:hover{ | |||
/* lehké zvednutí + stín, viditelné vždy */ | |||
transform: translateY(-2px); | |||
box-shadow: var(--box-shadow-medium), 0 6px 18px rgba(0,0,0,.18); | |||
border-color: var(--color-progressive); | |||
} | |||
/* rozjet „sheen“ */ | |||
.template-navpill:hover::before{ | |||
transform: translateX(125%); | |||
} | |||
.template-navpill | /* přívětivost pro snížené animace */ | ||
@media (prefers-reduced-motion: reduce){ | |||
.template-navpill, | |||
.template-navpill | .template-navpill::before, | ||
.template-navpill-background img { | |||
transition: none !important; | |||
transform: none !important; | |||
} | |||
} | } | ||
Verze z 13. 10. 2025, 22:35
.template-navpills {
display: grid;
gap: var( --space-xs );
grid-template-columns: repeat( auto-fill, minmax( 160px, 1fr ) );
grid-auto-rows: 3rem;
font-size: var( --font-size-small );
}
.template-navpill {
position: relative;
border: 1px solid var( --border-color-base );
border-radius: var( --border-radius-medium );
font-weight: var( --font-weight-medium );
line-height: var( --line-height-xx-small );
overflow: hidden;
/* --- přidáno: hladké přechody pro hover efekty --- */
transition:
transform 160ms ease,
box-shadow 160ms ease,
border-color 160ms ease,
background-color 160ms ease;
}
/* jemný „sheen“ pruh přes kartu (viditelný i přes pozadí) */
.template-navpill::before{
content: "";
position: absolute;
inset: 0;
pointer-events: none;
/* světelný pruh, který přelétne přes kartu */
background: linear-gradient(120deg, transparent 20%, rgba(255,255,255,.28) 40%, transparent 60%);
transform: translateX(-125%);
transition: transform 420ms ease;
/* ať je pruh vidět v dark i light */
mix-blend-mode: screen;
z-index: 1;
}
.template-navpill-background {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0; /* pod sheenem i textem */
}
.template-navpill-background:after {
content: '';
position: absolute;
inset: 0;
transition: transform 250ms ease;
}
.template-navpill-background img {
width: 100%;
height: 100%;
object-fit: cover;
transition: var( --transition-hover );
transition-property: transform;
}
/* zachováno původní chování */
.template-navpill:hover .template-navpill-background::after {
transform: translateX( -100% );
}
.template-navpill:hover .template-navpill-background img {
transform: scale( 1.1 );
}
.template-navpill > a {
position: relative;
padding: 0 var( --space-md );
display: flex;
align-items: center;
color: var( --color-emphasized );
text-decoration: none;
height: 100%;
z-index: 2; /* nad pozadím i sheenem */
}
.template-navpill > .template-navpill-background + a {
color: #fff;
text-shadow: -1px 0 .2em #000, 0 1px .2em #000, 1px 0 .2em #000, 0 -1px .2em #000;
}
/* zachováno původní chování pozadí na hover/active */
.template-navpill:hover {
background: var( --background-color-button-quiet--hover );
}
.template-navpill:active {
background: var( --background-color-button-quiet--active );
}
/* --- přidáno: viditelné hover efekty bez zásahu do původního --- */
.template-navpill:hover{
/* lehké zvednutí + stín, viditelné vždy */
transform: translateY(-2px);
box-shadow: var(--box-shadow-medium), 0 6px 18px rgba(0,0,0,.18);
border-color: var(--color-progressive);
}
/* rozjet „sheen“ */
.template-navpill:hover::before{
transform: translateX(125%);
}
/* přívětivost pro snížené animace */
@media (prefers-reduced-motion: reduce){
.template-navpill,
.template-navpill::before,
.template-navpill-background img {
transition: none !important;
transform: none !important;
}
}