etiquette/frontends/etiquette_flask/static/css/photo_card.css
Ethan Dalool 1b5770b81a Somewhat improve appearance of album cards on narrow screens.
Previously, on very narrow screens, the album cards were spilling
out of the container. Now they are better contained but I am
still not 100% satisfied with the margins between them.
2019-03-16 13:07:00 -07:00

181 lines
3.2 KiB
CSS

.album_card
{
background-color: var(--color_theme_secondary);
}
.album_card:hover
{
box-shadow: 2px 2px 5px 0px var(--color_site_dropshadow);
}
.album_card_list
{
display: grid;
grid-template:
"title metadata"
/1fr;
margin: 8px;
padding: 4px;
}
.album_card_grid
{
position: relative;
display: inline-grid;
vertical-align: top;
grid-template:
"thumbnail title" 1fr
"thumbnail metadata" auto
/auto 1fr;
max-width: 325px;
width: 100%;
margin-right: 8px;
margin-bottom: 8px;
box-sizing: border-box;
padding: 8px;
}
.album_card_thumbnail
{
grid-area: thumbnail;
background-color: var(--color_site_transparency);
width: 64px;
height: 64px;
margin-right: 8px;
}
.album_card_thumbnail img
{
max-width: 100%;
max-height: 100%;
margin: auto;
}
.album_card_title
{
grid-area: title;
}
.album_card_metadata
{
grid-area: metadata;
}
.album_card_tools
{
position: absolute;
right: 4px;
bottom: 4px;
}
.photo_card
{
background-color: var(--color_theme_secondary);
}
.photo_card_list
{
display: grid;
grid-template:
"checkbox filename metadata" auto
/auto 1fr auto;
margin: 8px;
padding: 4px;
}
.photo_card:hover
{
box-shadow: 2px 2px 5px 0px var(--color_site_dropshadow);
}
.photo_card_list .photo_card_selector_checkbox
{
grid-area: checkbox;
align-self: center;
}
.photo_card_grid
{
position: relative;
display: inline-grid;
vertical-align: top;
grid-template:
"thumbnail thumbnail" auto
"filename filename" 1fr
"tags metadata" auto
/10px auto;
min-width: 150px;
max-width: 300px;
height: 210px;
padding: 8px;
margin: 8px;
border-radius: 8px;
}
.photo_card_grid .photo_card_selector_checkbox
{
position:absolute;
left:5px;
top:5px;
}
.photo_card_thumbnail
{
grid-area: thumbnail;
align-self: start;
justify-self: center;
display: flex;
width: 100%;
height: 150px;
}
.photo_card_thumbnail img
{
max-width: 100%;
max-height: 100%;
margin: auto;
}
.photo_card_filename
{
/*
The width of photo cards should be based on the aspect ratio of the
thumbnail image. Previously, I had problems where the card would be wider
than necessary because the file had a long name.
The min-width:100% + width:0 prevent the info div from controlling
card size, so we can prioritize the thumbnail instead.
*/
justify-self: start;
grid-area: filename;
overflow: hidden;
min-width: 100%;
width: 0;
background-color: inherit;
word-break: break-word;
}
.photo_card_grid .photo_card_filename
{
align-self: start;
max-height: 30px;
font-size: 12.8px;
}
.photo_card_list .photo_card_filename
{
align-self: center;
}
.photo_card_filename:hover
{
overflow: visible;
max-height: none;
z-index: 1;
}
.photo_card_tags
{
grid-area: tags;
align-self: end;
justify-self: start;
font-family: monospace;
font-size: 11px;
cursor: help;
}
.photo_card_metadata
{
grid-area: metadata;
align-self: center;
justify-self: end;
font-family: monospace;
font-size: 11px;
}