diff --git a/_sass/_bootstrap-variables.scss b/_sass/_bootstrap-variables.scss index 6824794..df520cb 100755 --- a/_sass/_bootstrap-variables.scss +++ b/_sass/_bootstrap-variables.scss @@ -1,3 +1,5 @@ +// assets/css/style.scss is where Jekyll loads the main stylesheet + $grid-breakpoints: ( xs: 0, sm: 576px, diff --git a/_sass/bootstrap/_alert.scss b/_sass/bootstrap/_alert.scss index da2a98a..4aa1fc2 100644 --- a/_sass/bootstrap/_alert.scss +++ b/_sass/bootstrap/_alert.scss @@ -34,6 +34,7 @@ position: absolute; top: 0; right: 0; + z-index: 2; padding: $alert-padding-y $alert-padding-x; color: inherit; } diff --git a/_sass/bootstrap/_breadcrumb.scss b/_sass/bootstrap/_breadcrumb.scss index d748894..9c204c7 100644 --- a/_sass/bootstrap/_breadcrumb.scss +++ b/_sass/bootstrap/_breadcrumb.scss @@ -15,7 +15,7 @@ padding-left: $breadcrumb-item-padding; &::before { - display: inline-block; // Suppress underlining of the separator in modern browsers + float: left; // Suppress inline spacings and underlining of the separator padding-right: $breadcrumb-item-padding; color: $breadcrumb-divider-color; content: escape-svg($breadcrumb-divider); diff --git a/_sass/bootstrap/_buttons.scss b/_sass/bootstrap/_buttons.scss index e87d339..6ee24ba 100644 --- a/_sass/bootstrap/_buttons.scss +++ b/_sass/bootstrap/_buttons.scss @@ -10,9 +10,9 @@ font-weight: $btn-font-weight; color: $body-color; text-align: center; + text-decoration: if($link-decoration == none, null, none); white-space: $btn-white-space; vertical-align: middle; - cursor: if($enable-pointer-cursor-for-buttons, pointer, null); user-select: none; background-color: transparent; border: $btn-border-width solid transparent; @@ -37,12 +37,16 @@ @include box-shadow(none); } - &:not(:disabled):not(.disabled):active, - &:not(:disabled):not(.disabled).active { - @include box-shadow($btn-active-box-shadow); + &:not(:disabled):not(.disabled) { + cursor: if($enable-pointer-cursor-for-buttons, pointer, null); - &:focus { - @include box-shadow($btn-focus-box-shadow, $btn-active-box-shadow); + &:active, + &.active { + @include box-shadow($btn-active-box-shadow); + + &:focus { + @include box-shadow($btn-focus-box-shadow, $btn-active-box-shadow); + } } } } @@ -89,7 +93,6 @@ fieldset:disabled a.btn { &:focus, &.focus { text-decoration: $link-hover-decoration; - box-shadow: none; } &:disabled, diff --git a/_sass/bootstrap/_card.scss b/_sass/bootstrap/_card.scss index d6759fd..faaa75e 100644 --- a/_sass/bootstrap/_card.scss +++ b/_sass/bootstrap/_card.scss @@ -19,16 +19,26 @@ margin-left: 0; } - > .list-group:first-child { - .list-group-item:first-child { - @include border-top-radius($card-border-radius); + > .list-group { + border-top: inherit; + border-bottom: inherit; + + &:first-child { + border-top-width: 0; + @include border-top-radius($card-inner-border-radius); + } + + &:last-child { + border-bottom-width: 0; + @include border-bottom-radius($card-inner-border-radius); } } - > .list-group:last-child { - .list-group-item:last-child { - @include border-bottom-radius($card-border-radius); - } + // Due to specificity of the above selector (`.card > .list-group`), we must + // use a child selector here to prevent double borders. + > .card-header + .list-group, + > .list-group + .card-footer { + border-top: 0; } } @@ -80,16 +90,11 @@ &:first-child { @include border-radius($card-inner-border-radius $card-inner-border-radius 0 0); } - - + .list-group { - .list-group-item:first-child { - border-top: 0; - } - } } .card-footer { padding: $card-spacer-y $card-spacer-x; + color: $card-cap-color; background-color: $card-cap-bg; border-top: $card-border-width solid $card-border-color; @@ -123,6 +128,7 @@ bottom: 0; left: 0; padding: $card-img-overlay-padding; + @include border-radius($card-inner-border-radius); } .card-img, @@ -200,12 +206,12 @@ .card-img-top, .card-header { - // stylelint-disable-next-line property-blacklist + // stylelint-disable-next-line property-disallowed-list border-top-right-radius: 0; } .card-img-bottom, .card-footer { - // stylelint-disable-next-line property-blacklist + // stylelint-disable-next-line property-disallowed-list border-bottom-right-radius: 0; } } @@ -215,12 +221,12 @@ .card-img-top, .card-header { - // stylelint-disable-next-line property-blacklist + // stylelint-disable-next-line property-disallowed-list border-top-left-radius: 0; } .card-img-bottom, .card-footer { - // stylelint-disable-next-line property-blacklist + // stylelint-disable-next-line property-disallowed-list border-bottom-left-radius: 0; } } @@ -258,6 +264,8 @@ // .accordion { + overflow-anchor: none; + > .card { overflow: hidden; diff --git a/_sass/bootstrap/_carousel.scss b/_sass/bootstrap/_carousel.scss index fb5e9f8..db30bed 100644 --- a/_sass/bootstrap/_carousel.scss +++ b/_sass/bootstrap/_carousel.scss @@ -127,7 +127,7 @@ display: inline-block; width: $carousel-control-icon-width; height: $carousel-control-icon-width; - background: no-repeat 50% / 100% 100%; + background: 50% / 100% 100% no-repeat; } .carousel-control-prev-icon { background-image: escape-svg($carousel-control-prev-icon-bg); diff --git a/_sass/bootstrap/_close.scss b/_sass/bootstrap/_close.scss index 071aebe..82e9593 100644 --- a/_sass/bootstrap/_close.scss +++ b/_sass/bootstrap/_close.scss @@ -30,7 +30,6 @@ button.close { padding: 0; background-color: transparent; border: 0; - appearance: none; } // Future-proof disabling of clicks on `` elements diff --git a/_sass/bootstrap/_custom-forms.scss b/_sass/bootstrap/_custom-forms.scss index 21e72da..06725ff 100644 --- a/_sass/bootstrap/_custom-forms.scss +++ b/_sass/bootstrap/_custom-forms.scss @@ -9,9 +9,11 @@ .custom-control { position: relative; + z-index: 1; display: block; min-height: $font-size-base * $line-height-base; padding-left: $custom-control-gutter + $custom-control-indicator-size; + color-adjust: exact; // Keep themed appearance for print } .custom-control-inline { @@ -37,7 +39,7 @@ &:focus ~ .custom-control-label::before { // the mixin is not used here to make sure there is feedback @if $enable-shadows { - box-shadow: $input-box-shadow, $input-focus-box-shadow; + box-shadow: $input-box-shadow, $custom-control-indicator-focus-box-shadow; } @else { box-shadow: $custom-control-indicator-focus-box-shadow; } @@ -102,7 +104,7 @@ width: $custom-control-indicator-size; height: $custom-control-indicator-size; content: ""; - background: no-repeat 50% / #{$custom-control-indicator-bg-size}; + background: 50% / #{$custom-control-indicator-bg-size} no-repeat; } } @@ -135,10 +137,10 @@ .custom-control-input:disabled { &:checked ~ .custom-control-label::before { - background-color: $custom-control-indicator-checked-disabled-bg; + @include gradient-bg($custom-control-indicator-checked-disabled-bg); } &:indeterminate ~ .custom-control-label::before { - background-color: $custom-control-indicator-checked-disabled-bg; + @include gradient-bg($custom-control-indicator-checked-disabled-bg); } } } @@ -149,7 +151,7 @@ .custom-radio { .custom-control-label::before { - // stylelint-disable-next-line property-blacklist + // stylelint-disable-next-line property-disallowed-list border-radius: $custom-radio-indicator-border-radius; } @@ -161,7 +163,7 @@ .custom-control-input:disabled { &:checked ~ .custom-control-label::before { - background-color: $custom-control-indicator-checked-disabled-bg; + @include gradient-bg($custom-control-indicator-checked-disabled-bg); } } } @@ -179,7 +181,7 @@ left: -($custom-switch-width + $custom-control-gutter); width: $custom-switch-width; pointer-events: all; - // stylelint-disable-next-line property-blacklist + // stylelint-disable-next-line property-disallowed-list border-radius: $custom-switch-indicator-border-radius; } @@ -189,7 +191,7 @@ width: $custom-switch-indicator-size; height: $custom-switch-indicator-size; background-color: $custom-control-indicator-border-color; - // stylelint-disable-next-line property-blacklist + // stylelint-disable-next-line property-disallowed-list border-radius: $custom-switch-indicator-border-radius; @include transition(transform .15s ease-in-out, $custom-forms-transition); } @@ -204,7 +206,7 @@ .custom-control-input:disabled { &:checked ~ .custom-control-label::before { - background-color: $custom-control-indicator-checked-disabled-bg; + @include gradient-bg($custom-control-indicator-checked-disabled-bg); } } } @@ -237,8 +239,9 @@ border-color: $custom-select-focus-border-color; outline: 0; @if $enable-shadows { - box-shadow: $custom-select-box-shadow, $custom-select-focus-box-shadow; + @include box-shadow($custom-select-box-shadow, $custom-select-focus-box-shadow); } @else { + // Avoid using mixin so we can pass custom focus shadow properly box-shadow: $custom-select-focus-box-shadow; } @@ -312,6 +315,7 @@ width: 100%; height: $custom-file-height; margin: 0; + overflow: hidden; opacity: 0; &:focus ~ .custom-file-label { @@ -344,6 +348,7 @@ z-index: 1; height: $custom-file-height; padding: $custom-file-padding-y $custom-file-padding-x; + overflow: hidden; font-family: $custom-file-font-family; font-weight: $custom-file-font-weight; line-height: $custom-file-line-height; @@ -385,7 +390,7 @@ appearance: none; &:focus { - outline: none; + outline: 0; // Pseudo-elements must be split across multiple rulesets to have an effect. // No box-shadow() mixin for focus accessibility. diff --git a/_sass/bootstrap/_dropdown.scss b/_sass/bootstrap/_dropdown.scss index 76f33a4..f39de11 100644 --- a/_sass/bootstrap/_dropdown.scss +++ b/_sass/bootstrap/_dropdown.scss @@ -22,7 +22,7 @@ display: none; // none by default, but block on "open" of the menu float: left; min-width: $dropdown-min-width; - padding: $dropdown-padding-y 0; + padding: $dropdown-padding-y $dropdown-padding-x; margin: $dropdown-spacer 0 0; // override default ul @include font-size($dropdown-font-size); color: $dropdown-color; @@ -100,7 +100,7 @@ } } -// When enabled Popper.js, reset basic dropdown position +// When Popper is enabled, reset the basic dropdown position // stylelint-disable-next-line no-duplicate-selectors .dropdown-menu { &[x-placement^="top"], @@ -128,6 +128,7 @@ font-weight: $font-weight-normal; color: $dropdown-link-color; text-align: inherit; // For `