aboutsummaryrefslogtreecommitdiff
path: root/scss
diff options
context:
space:
mode:
authorPierre-Denis Vanduynslager <[email protected]>2017-01-13 23:05:33 -0500
committerMark Otto <[email protected]>2017-03-23 23:02:28 -0700
commitc1325a756ef1c19c197566f6889d49410b1dadf5 (patch)
tree8ceff01b6b9be5312f223eb2fb785ea41e330b75 /scss
parentd0b568470f1623ef865eefa695503f642d802565 (diff)
downloadbootstrap-c1325a756ef1c19c197566f6889d49410b1dadf5.tar.xz
bootstrap-c1325a756ef1c19c197566f6889d49410b1dadf5.zip
Generate correct breakpoints for navbar-toggleable-* and generate toggleable without media query to never collapse
Diffstat (limited to 'scss')
-rw-r--r--scss/_navbar.scss6
-rw-r--r--scss/mixins/_breakpoints.scss15
2 files changed, 17 insertions, 4 deletions
diff --git a/scss/_navbar.scss b/scss/_navbar.scss
index 6c31017dc..a0856cb81 100644
--- a/scss/_navbar.scss
+++ b/scss/_navbar.scss
@@ -126,11 +126,11 @@
// where your navbar collapses.
.navbar-toggleable {
@each $breakpoint in map-keys($grid-breakpoints) {
- $next: breakpoint-next($breakpoint, $grid-breakpoints);
+ $previous: breakpoint-previous($breakpoint, $grid-breakpoints);
$infix: breakpoint-infix($breakpoint, $grid-breakpoints);
&#{$infix} {
- @include media-breakpoint-down($breakpoint) {
+ @include media-breakpoint-down($previous) {
.navbar-nav {
.dropdown-menu {
position: static;
@@ -144,7 +144,7 @@
}
}
- @include media-breakpoint-up($next) {
+ @include media-breakpoint-up($breakpoint) {
flex-direction: row;
flex-wrap: nowrap;
align-items: center;
diff --git a/scss/mixins/_breakpoints.scss b/scss/mixins/_breakpoints.scss
index 904b60f7a..b2d90c447 100644
--- a/scss/mixins/_breakpoints.scss
+++ b/scss/mixins/_breakpoints.scss
@@ -16,9 +16,22 @@
// md
@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {
$n: index($breakpoint-names, $name);
- @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);
+ @return if($n, if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null), null);
}
+// Name of the previous breakpoint, or null for the first breakpoint.
+//
+// >> breakpoint-previous(sm)
+// xs
+// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
+// xs
+// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))
+// xs
+@function breakpoint-previous($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {
+ $n: index($breakpoint-names, $name);
+ @return if($n != 1, nth($breakpoint-names, $n - 1), null);
+};
+
// Minimum breakpoint width. Null for the smallest (first) breakpoint.
//
// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))