erynwells.me/assets/styles/photos.css

230 lines
4.9 KiB
CSS

:root {
--date-item-background-color: rgb(var(--lt-gray));
--photo-params-background-color: rgb(var(--lt-gray));
--photo-params-container-background-color: rgb(var(--super-lt-gray));
--photo-params-color: rgb(var(--sub-dk-gray));
--photo-params-border-color: rgb(var(--super-lt-gray));
--carousel-gradient-full-opaque: var(--background);
}
@media (prefers-color-scheme: dark) {
:root {
--date-item-background-color: rgb(var(--dk-gray));
--photo-params-background-color: rgb(var(--dk-gray));
--photo-params-container-background-color: rgb(var(--sub-dk-gray));
--photo-params-color: rgb(var(--super-lt-gray));
--photo-params-border-color: rgb(var(--sub-dk-gray));
}
}
.photos.list {
box-sizing: border-box;
max-width: none;
padding: 0 var(--body-item-spacing);
width: 100%;
}
.photos.list {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: 4px;
}
.photos.list > * {
margin-block-end: 0;
}
.photos.page > nav {
margin-block-end: var(--body-item-spacing);
}
.photos.list > a {
display: block;
line-height: 0;
}
.photos.list > a > img {
border-radius: 3px;
image-orientation: from-image;
}
.photos.list > div {
background-color: var(--date-item-background-color);
border-radius: 3px;
width: 100%;
height: 100%;
display: flex;
align-items: center;
}
.photos.list > div > h6 {
display: block;
font-size: 5rem;
margin: 0 auto;
letter-spacing: 0;
}
.photos.list > div > h6 > span {
text-align: end;
width: min-content;
position: relative;
display: inline-block;
padding-inline-end: 20px;
}
.photos.list > div > h6 > span::after {
top: 6px;
right: 0px;
position: absolute;
display: block;
content: "⏵︎";
font-size: 80%;
}
@media (max-width: calc(24px + 400px + 4px)) {
.photos.list > div > h6 > span {
width: max-content;
padding-block: calc(0.25 * var(--body-item-spacing));
}
.photos.list > div > h6 > span::after {
content: "";
}
}
.photos.page > figure.carousel {
position: relative;
grid-column: 1 / 4;
max-width: 100%;
width: 100%;
}
.photos.page > figure.carousel > ul {
align-items: stretch;
display: flex;
flex-flow: row nowrap;
gap: 0 calc(0.5 * var(--body-item-spacing));
margin: 0;
overflow-x: scroll;
scroll-snap-type: x mandatory;
padding: 0;
padding-inline: var(--body-item-spacing);
}
.photos.page > figure.carousel > ul::-webkit-scrollbar {
background: transparent;
width: 0;
}
.photos.page > figure.carousel > .shadow {
position: absolute;
top: 0;
height: 100%;
width: var(--body-item-spacing);
z-index: 10;
}
.photos.page > figure.carousel > .shadow.left {
background: linear-gradient(
to right,
rgba(var(--carousel-gradient-full-opaque), 1),
rgba(var(--carousel-gradient-full-opaque), 0));
left: 0;
}
.photos.page > figure.carousel > .shadow.right {
background: linear-gradient(
to left,
rgba(var(--carousel-gradient-full-opaque), 1),
rgba(var(--carousel-gradient-full-opaque), 0));
right: 0;
}
.photos.page > figure.carousel > ul > li {
scroll-snap-align: center;
margin: 0;
width: var(--content-width);
flex-shrink: 0;
list-style: none;
padding: 0;
}
.photo-params {
width: 100%;
}
.photo-params > .container {
display: block;
background-color: var(--photo-params-container-background-color);
border-radius: 10px;
margin: var(--body-item-spacing) auto;
padding: calc(var(--body-item-spacing) / 2);
width: 66%;
}
.photo-params > .container > table {
background-color: var(--photo-params-background-color);
color: var(--photo-params-color);
border-collapse: collapse;
border-radius: 6px;
margin: 0;
table-layout: fixed;
text-align: center;
width: 100%;
}
.photo-params table > thead > tr > td {
border-bottom: 1px solid var(--photo-params-border-color);
font-size: 80%;
font-weight: bold;
}
.photo-params tr.exposure-attributes > td {
border-top: 1px solid var(--photo-params-border-color);
border-left: 1px solid var(--photo-params-border-color);
}
.photo-params tr.exposure-attributes > td:first-child {
border-left: none;
}
.photo-params td {
font-size: 75%;
padding: 1rem;
}
.photo-params td:last-child {
text-align: end;
}
.photo-params td:first-child {
text-align: start;
}
.photo-params .make-model {
font-weight: bold;
}
.photo-params .size {
border-left: 0;
}
.photo-params .location {
border-right: 0;
}
.photo-params.debug thead {
font-size: 2rem;
font-weight: bold;
border-bottom: 2px solid rgb(var(--dk-gray));
}
.photo-params.debug {
width: 100%;
}
.photo-params.debug td {
border: 1px solid var(--photo-params-border-color);
overflow: scroll;
vertical-align: top;
}