Files
timeline-frontend/src/pages/gallery/index.css
2025-08-04 16:56:39 +08:00

75 lines
1.3 KiB
CSS

.small-grid-view {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
gap: 16px;
}
.large-grid-view {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 24px;
}
.image-card {
position: relative;
overflow: hidden;
border-radius: 8px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
transition: all 0.3s;
}
.image-card:hover {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
transform: translateY(-2px);
}
.image-checkbox {
position: absolute;
top: 8px;
left: 8px;
z-index: 10;
}
.image-wrapper {
cursor: pointer;
}
.image-info {
display: flex;
align-items: center;
justify-content: space-between;
padding: 8px;
}
.image-title {
flex: 1;
margin-right: 8px;
overflow: hidden;
font-size: 12px;
white-space: nowrap;
text-overflow: ellipsis;
}
@media (max-width: 768px) {
.small-grid-view {
grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
gap: 12px;
}
.large-grid-view {
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: 16px;
}
}
@media (max-width: 480px) {
.small-grid-view {
grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
gap: 8px;
}
.large-grid-view {
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
gap: 12px;
}
}