diff --git a/sass/layouts/_layouts.scss b/sass/layouts/_layouts.scss index 8fe575a..a427a66 100644 --- a/sass/layouts/_layouts.scss +++ b/sass/layouts/_layouts.scss @@ -1,7 +1,12 @@ .layout { - &__page { - max-width: $max-content-width; + &__page { + max-width: $max-content-width; + + @include respond-to(s) { + margin: 0 auto; + min-height: 100vh; } + } &__header, &__footer, @@ -12,11 +17,18 @@ &__page-top, &__page-bottom { padding: 0 $zen-gutters / 2; + min-width: 0; // With display grid defaults to auto making
overflow.
@include respond-to(s) {
padding: 0 $zen-gutters;
}
}
+
+ &__grid-notice {
+ margin: $zen-gutters/2;
+ padding: $zen-gutters/2;
+ border: 2px dashed color('red');
+ }
}
@supports (display: grid) {
@@ -24,70 +36,100 @@
.layout {
&__page {
display: grid;
- grid-template-columns: [first-start] 1fr [last-end];
+ grid-template-areas: 'head'
+ 'nav'
+ 'top'
+ 'main'
+ 'side1'
+ 'side2'
+ 'bottom'
+ 'foot';
+ grid-template-rows: auto
+ auto
+ auto
+ 1fr
+ auto
+ auto
+ auto
+ auto;
+ grid-template-columns: 1fr;
}
- @include respond-to(s) {
+ @include respond-to(xl) {
&__page {
- grid-template-rows: [head-start] auto
- [nav-start] auto
- [page-top-start] auto
- [main-start] 1fr
- [page-bottom-start] auto
- [footer-start] auto;
- min-height: 100vh;
- margin: 0 auto;
+ grid-template-rows: auto
+ auto
+ auto
+ 1fr
+ auto
+ auto;
}
&__sidebar-first {
- grid-template-columns: [first-start] 1fr
- [last-start] 2fr [last-end];
+ grid-template-areas: 'head head'
+ 'nav nav'
+ 'side1 top'
+ 'side2 main'
+ 'side2 bottom'
+ 'foot foot';
+ grid-template-columns: 1fr
+ 2fr;
}
&__sidebar-second {
- grid-template-columns: [first-start] 2fr
- [last-start] 1fr [last-end];
+ grid-template-areas: 'head head'
+ 'nav nav'
+ 'top side2'
+ 'main side2'
+ 'bottom side2'
+ 'foot foot';
+ grid-template-columns: 2fr
+ 1fr;
}
&__sidebar-two {
- grid-template-columns: [first-start] 1fr
- [middle-start] 2fr
- [last-start] 1fr [last-end];
+ grid-template-areas: 'head head head'
+ 'nav nav nav'
+ 'side1 top side2'
+ 'side1 main side2'
+ 'side1 bottom side2'
+ 'foot foot foot';
+ grid-template-columns: 1fr
+ 2fr
+ 1fr;
}
+ }
- &__full {
- grid-column: first-start / last-end;
- }
+ &__header {
+ grid-area: head;
+ }
- &__first-sidebar {
- grid-column: first-start;
- }
+ &__navigation {
+ grid-area: nav;
+ }
- &__header {
- grid-row: head-start;
- }
+ &__page-top {
+ grid-area: top;
+ }
- &__navigation {
- grid-row: nav-start;
- }
+ &__content {
+ grid-area: main;
+ }
- &__page-top {
- grid-row: page-top-start;
- }
+ &__first-sidebar {
+ grid-area: side1;
+ }
- &__content,
- &__first-sidebar,
- &__second-sidebar {
- grid-row: main-start;
- }
+ &__second-sidebar {
+ grid-area: side2;
+ }
- &__page-bottom {
- grid-row: page-bottom-start;
- }
+ &__page-bottom {
+ grid-area: bottom;
+ }
- &__footer {
- grid-row: footer-start;
- }
+ &__footer {
+ grid-area: foot;
}
}