پیشنمایش زنده
کد HTML
<div class="metro-line-card">
<div class="metro-line-point">
<p>Aldgate</p>
<div></div>
</div>
<div class="metro-line-point">
<p>Liverpool</p>
<div></div>
</div>
<div class="metro-line-point">
<p>Moorgate</p>
<div></div>
</div>
<div class="metro-line-point">
<p>Barbican</p>
<div></div>
</div>
<div class="metro-line-information">
<p>Name | Line 1</p>
<div><p>Image</p></div>
</div>
</div>
کد CSS
.metro-line-card {
width: 15em;
height: 10em;
display: flex;
justify-content: space-between;
align-items: flex-end;
position: relative;
z-index: 0;
box-shadow: inset 0em -1em rgb(255, 0, 64);
}
.metro-line-point {
background-color: white;
width: 1.5em;
height: 1.5em;
border-radius: 50%;
border: solid 0.25em black;
position: relative;
z-index: 0;
transition: all 0.25s ease-in-out;
}
.metro-line-point:hover {
border: solid 0.5em black;
}
.metro-line-point p {
position: absolute;
top: 50%;
left: 50%;
font-weight: bold;
transform: rotate(-50deg) translate(50%, -200%);
z-index: 0;
opacity: 100%;
transition: all 0.25s ease-in-out;
}
.metro-line-point:hover p {
opacity: 0%;
}
.metro-line-point div {
position: absolute;
top: 50%;
left: 50%;
width: 1.5em;
height: 2em;
background-color: rgb(255, 0, 64);
transform: translate(-50%, -150%);
border-radius: 50%;
z-index: 0;
opacity: 0%;
transition: all 0.25s ease-in-out;
}
.metro-line-point:hover div {
opacity: 100%;
transform: translate(-50%, -175%);
}
.metro-line-information {
width: 100%;
height: 7.25em;
background-color: rgb(255, 0, 64);
position: absolute;
z-index: 1;
top: 10%;
border-radius: 1em;
opacity: 0%;
transition: all 0.25s ease-in-out;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
font-weight: bold;
}
.metro-line-information div {
background-color: white;
width: 80%;
height: 4em;
border: solid 0.25em black;
border-radius: 1em;
display: flex;
justify-content: center;
align-items: center;
font-weight: bold;
}
.metro-line-point:hover ~ .metro-line-information {
opacity: 100%;
top: 0%;
}