+
@@ -57,68 +59,4 @@ const imageFiles = (await Astro.glob('../assets/cat-pics/*'));
text-align: center;
margin: 10px;
}
- .masonry {
- column-gap: 10px;
- margin: 10px;
- }
- @media (min-width: 1100px) {
- .masonry {
- column-count: 4;
- }
- }
- @media (max-width: 1099px) and (min-width: 900px) {
- .masonry {
- column-count: 3;
- }
- }
- @media (max-width: 899px) and (min-width: 400px) {
- .masonry {
- column-count: 2;
- }
- }
- @media (max-width: 399px) {
- .masonry {
- column-count: 1;
- }
- }
- .meow-grid {
- display: grid;
- grid-template-rows: 1fr auto;
- margin-bottom: 10px;
- break-inside: avoid;
- }
- .meow-image {
- display: block;
- max-width: 100%;
- border-radius: 30px;
- grid-row: 1 / -1;
- grid-column: 1;
- animation: float-rev 1s ease-in-out;
- }
- .meow-image:hover {
- box-shadow: 0px 10px 60px -10px;
- transform: translatey(-10px);
- cursor: pointer;
- animation: float 1s ease-in-out;
- }
- @keyframes float {
- 0% {
- box-shadow: 0px 10px 60px -10px rgba(0,0,0,0);
- transform: translatey(0px);
- }
- 100% {
- box-shadow: 0px 10px 60px -10px rgba(0,0,0,1);
- transform: translatey(-10px);
- }
- }
- @keyframes float-rev {
- 0% {
- box-shadow: 0px 10px 60px -10px rgba(0,0,0,1);
- transform: translatey(-10px);
- }
- 100% {
- box-shadow: 0px 10px 60px -10px rgba(0,0,0,0);
- transform: translatey(0px);
- }
- }
diff --git a/src/styles/masonry.css b/src/styles/masonry.css
new file mode 100644
index 0000000..0fd5b6b
--- /dev/null
+++ b/src/styles/masonry.css
@@ -0,0 +1,75 @@
+/*
+ * >>>> Masonry Styles <<<<
+ *
+ * This stylesheet creates a pinterest-like layout, intended for images. This
+ * is currently used for the cat-pictures page.
+ *
+ * The parent div with the masonry must have the class ".masonry".
+ */
+.masonry {
+ column-gap: 10px;
+ margin: 10px;
+}
+@media (min-width: 1100px) {
+ .masonry {
+ column-count: 4;
+ }
+}
+@media (max-width: 1099px) and (min-width: 800px) {
+ .masonry {
+ column-count: 3;
+ }
+}
+@media (max-width: 799px) and (min-width: 400px) {
+ .masonry {
+ column-count: 2;
+ }
+}
+@media (max-width: 399px) {
+ .masonry {
+ column-count: 1;
+ }
+}
+.masonry .masonry-grid {
+ display: grid;
+ grid-template-rows: 1fr auto;
+ margin-bottom: 10px;
+ break-inside: avoid;
+}
+.masonry .masonry-image {
+ display: block;
+ max-width: 100%;
+ border-radius: 30px;
+ grid-row: 1 / -1;
+ grid-column: 1;
+ animation: float-rev 1s ease-in-out;
+}
+@media (min-width: 800px) {
+ /* Doesn't do hover effect if there are fewer than 3 columns */
+ .masonry .masonry-image:hover {
+ box-shadow: 0px 10px 60px -10px;
+ transform: translatey(-10px);
+ cursor: pointer;
+ animation: float 1s ease-in-out;
+ }
+}
+@keyframes float {
+ 0% {
+ box-shadow: 0px 10px 60px -10px rgba(0,0,0,0);
+ transform: translatey(0px);
+ }
+ 100% {
+ box-shadow: 0px 10px 60px -10px rgba(0,0,0,1);
+ transform: translatey(-10px);
+ }
+}
+@keyframes float-rev {
+ 0% {
+ box-shadow: 0px 10px 60px -10px rgba(0,0,0,1);
+ transform: translatey(-10px);
+ }
+ 100% {
+ box-shadow: 0px 10px 60px -10px rgba(0,0,0,0);
+ transform: translatey(0px);
+ }
+}