feat(SW-2800): closing image gallery and lightbox on using browser navigation * feat(SW-2800): closing image gallery and lightbox on using browser navigation Approved-by: Linus Flood
165 lines
3.1 KiB
CSS
165 lines
3.1 KiB
CSS
.galleryContainer {
|
|
display: grid;
|
|
gap: var(--Space-x2);
|
|
padding: var(--Space-x2);
|
|
height: 100%;
|
|
overflow-y: auto;
|
|
background-color: var(--Base-Background-Primary-Normal);
|
|
}
|
|
|
|
.mobileGallery {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
gap: var(--Space-x1);
|
|
padding-bottom: var(--Space-x3);
|
|
}
|
|
|
|
.thumbnailContainer {
|
|
position: relative;
|
|
height: 242px;
|
|
}
|
|
|
|
.fullWidthImage {
|
|
grid-column: 1 / -1;
|
|
height: 240px;
|
|
}
|
|
|
|
.imageButton {
|
|
position: relative;
|
|
height: 100%;
|
|
width: 100%;
|
|
padding: 0;
|
|
border-width: 0;
|
|
background-color: transparent;
|
|
cursor: pointer;
|
|
border-radius: var(--Corner-radius-md);
|
|
overflow: hidden;
|
|
z-index: 0;
|
|
|
|
&:focus-visible {
|
|
outline-offset: -2px; /* Adjust the outline offset as wrappers uses overflow-hidden */
|
|
}
|
|
}
|
|
|
|
.image {
|
|
transition: opacity 0.3s ease-in-out;
|
|
object-fit: cover;
|
|
z-index: -1;
|
|
}
|
|
|
|
@media screen and (max-width: 767px) {
|
|
.closeButton .desktopCloseIcon,
|
|
.desktopGallery {
|
|
display: none;
|
|
}
|
|
|
|
.galleryContainer {
|
|
align-content: start;
|
|
}
|
|
|
|
.closeButton {
|
|
justify-self: start;
|
|
}
|
|
}
|
|
|
|
@media screen and (min-width: 768px) {
|
|
.mobileGallery,
|
|
.closeButton .mobileCloseIcon {
|
|
display: none;
|
|
}
|
|
|
|
.galleryContainer {
|
|
padding: var(--Spacing-x5) var(--Spacing-x6);
|
|
}
|
|
|
|
.closeButton {
|
|
position: absolute;
|
|
top: var(--Space-x2);
|
|
right: var(--Space-x2);
|
|
z-index: 1;
|
|
}
|
|
|
|
.desktopGallery {
|
|
display: grid;
|
|
grid-template-rows: 28px 1fr 7.8125rem;
|
|
row-gap: var(--Spacing-x-one-and-half);
|
|
background-color: var(--Base-Background-Primary-Normal);
|
|
height: 100%;
|
|
position: relative;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.galleryHeader {
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
|
|
.imageCaption {
|
|
background-color: var(--Base-Surface-Subtle-Normal);
|
|
padding: var(--Spacing-x-half) var(--Spacing-x1);
|
|
border-radius: var(--Corner-radius-sm);
|
|
color: var(--Text-Secondary);
|
|
}
|
|
|
|
.mainImageWrapper {
|
|
position: relative;
|
|
width: 100%;
|
|
}
|
|
|
|
.mainImageContainer {
|
|
width: 100%;
|
|
height: 100%;
|
|
will-change: transform;
|
|
position: absolute;
|
|
}
|
|
|
|
.desktopThumbnailGrid {
|
|
display: grid;
|
|
grid-template-columns: repeat(5, 1fr);
|
|
gap: var(--Spacing-x1);
|
|
max-height: 7.8125rem;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.thumbnailContainer {
|
|
height: 125px;
|
|
}
|
|
|
|
.fullWidthImage {
|
|
grid-column: auto;
|
|
height: auto;
|
|
}
|
|
|
|
.thumbnailContainer img {
|
|
border-radius: var(--Corner-radius-sm);
|
|
}
|
|
|
|
.navigationButton {
|
|
position: absolute;
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
background-color: var(--Component-Button-Inverted-Fill-Default);
|
|
color: var(--Component-Button-Inverted-On-fill-Default);
|
|
border-radius: var(--Corner-radius-rounded);
|
|
padding: 10px;
|
|
cursor: pointer;
|
|
border-width: 0;
|
|
display: flex;
|
|
z-index: 1;
|
|
box-shadow: 0px 0px 8px 1px #0000001a;
|
|
|
|
&:hover {
|
|
background-color: var(--Component-Button-Inverted-Fill-Hover);
|
|
color: var(--Component-Button-Inverted-On-fill-Hover);
|
|
}
|
|
}
|
|
|
|
.galleryPrevButton {
|
|
left: var(--Spacing-x2);
|
|
}
|
|
|
|
.galleryNextButton {
|
|
right: var(--Spacing-x2);
|
|
}
|
|
}
|