galaxy/Cards/wztd_tall-rattlesnake-53.html

133 lines
2.6 KiB
HTML

<div class="card" style="--rating:90">
<div class="icon">🫠</div>
<div class="title">Easy Cheesy</div>
<p class="description">This cheesy, juicy ultimate comforting lunch or quick and easy dinner recipe.</p>
<div class="rating"></div>
<a href="#" class="link">See the recipe</a>
</div>
<style>
/* From Uiverse.io by wztd - Tags: card */
.card {
--background: #fff;
--cardShadow: rgba(32,33,37,.1);
--cardShadowHover: rgba(32,33,37,.06);
--cardShadowActive: rgba(32,33,37,.55);
--cardBorder: #dbdce0;
--cardBorderActive: #1a73e8;
--textColor: #202125;
--linkColor: #1967d2;
--ratingColor: #faab00;
}
@media (prefers-color-scheme: dark) {
.card {
--background: #3c4043;
--cardShadow: rgba(0,0,0,.28);
--cardShadowHover: rgba(0,0,0,.16);
--cardShadowActive: rgba(0,0,0,.55);
--cardBorder: #202125;
--cardBorderActive: #8ab4f8;
--textColor: #e9eaee;
--linkColor: #8ab4f8;
}
}
.card {
width: 250px;
height: 350px;
aspect-ratio: 2/3;
background: var(--background);
color: var(--textColor);
border: 1px solid var(--cardBorder);
padding: 25px;
box-shadow: 8px 8px 0 var(--cardShadow);
transition: box-shadow .5s, transform .5s;
border-radius: 8px;
display: inline-block;
}
.card:hover {
transform: translate(-2px, -4px);
box-shadow: 16px 16px 0 var(--cardShadowHover);
}
.card:active {
transform: translate(-2px, -4px);
border: 2px solid var(--cardBorderActive);
box-shadow: 4px 4px 0 var(--cardShadowActive);
}
.card > .icon,
.card > .title,
.card > .description {
margin-bottom: 0.7em;
cursor: default;
user-select: none;
}
.card > .title {
margin-top: 1.5em;
font-weight: bold;
}
.card > .description {
line-height: 1.5em;
min-height: 6em;
}
.card > .icon {
font-size: 3em;
margin-bottom: .2em;
}
.card > .rating {
font-size: 1.5em;
margin-bottom: 0.8em;
color: var(--ratingColor);
font-weight: bold;
position: relative;
width: max-content;
}
.card > .rating:before {
content: "☆☆☆☆☆";
}
.card > .rating:after {
content: "★★★★★";
position: absolute;
left: 0;
z-index: 0;
width: calc(var(--rating) * 1%);
overflow: hidden;
}
.card > .link {
margin-bottom: 1rem;
color: var(--linkColor);
font-size: .8em;
font-weight: 600;
}
/* Optional ~ Link the whole card */
.card > .link::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.card > .link:after {
content: "↗";
display: inline-block;
margin-left: .3em;
transition: transform .3s ease-in-out;
}
.card:hover > .link:after {
transform: translate(.2em, -.2em);
}
</style>