From 92b2f187cd8f9c6b243bf06756beac960dae22df Mon Sep 17 00:00:00 2001 From: Daniel Ruf Date: Tue, 1 May 2018 23:25:19 +0200 Subject: [PATCH] style: fix sasslint warnings --- .sass-lint.yml | 6 +++--- scss/_global.scss | 6 +++--- scss/components/_accordion-menu.scss | 27 +++++++++++++++------------ scss/components/_accordion.scss | 9 ++++++--- scss/components/_breadcrumbs.scss | 14 ++++++++------ scss/components/_button-group.scss | 20 +++++++++++--------- scss/components/_button.scss | 14 ++++++-------- scss/components/_card.scss | 2 +- scss/components/_drilldown.scss | 11 +++++------ scss/components/_dropdown-menu.scss | 12 ++++++------ scss/components/_dropdown.scss | 11 +++++++---- scss/components/_flex.scss | 6 ++++-- scss/components/_table.scss | 2 +- scss/forms/_error.scss | 1 + scss/forms/_input-group.scss | 10 ++++++---- scss/forms/_meter.scss | 10 +++++----- scss/forms/_progress.scss | 2 +- scss/forms/_range.scss | 8 ++++---- scss/forms/_text.scss | 6 +++--- 19 files changed, 96 insertions(+), 81 deletions(-) diff --git a/.sass-lint.yml b/.sass-lint.yml index af8d97d34a..3e64033408 100644 --- a/.sass-lint.yml +++ b/.sass-lint.yml @@ -45,11 +45,11 @@ rules: - 1 - include: true - force-attribute-nesting: 1 + force-attribute-nesting: 0 - force-element-nesting: 1 + force-element-nesting: 0 - force-pseudo-nesting: 1 + force-pseudo-nesting: 0 function-name-format: - 1 diff --git a/scss/_global.scss b/scss/_global.scss index 78ee3112ab..3210c8c295 100644 --- a/scss/_global.scss +++ b/scss/_global.scss @@ -2,7 +2,7 @@ // foundation.zurb.com // Licensed under MIT Open Source -// sass-lint:disable force-attribute-nesting, force-pseudo-nesting, no-color-literals, no-qualifying-elements +// sass-lint:disable no-color-literals, no-qualifying-elements //// /// @group global @@ -166,8 +166,8 @@ $global-color-pick-contrast-tolerance: 0 !default; color: $body-font-color; @if ($body-antialiased) { - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; // sass-lint:disable-line no-vendor-prefixes + -moz-osx-font-smoothing: grayscale; // sass-lint:disable-line no-vendor-prefixes } } diff --git a/scss/components/_accordion-menu.scss b/scss/components/_accordion-menu.scss index 7d25446607..272cb8613d 100644 --- a/scss/components/_accordion-menu.scss +++ b/scss/components/_accordion-menu.scss @@ -51,7 +51,7 @@ $accordionmenu-submenu-toggle-height: $accordionmenu-submenu-toggle-width !defau $accordionmenu-arrow-size: 6px !default; @mixin zf-accordion-menu-left-right-arrows { - .is-accordion-submenu-parent:not(.has-submenu-toggle) > a { + .is-accordion-submenu-parent:not(.has-submenu-toggle) > a { // sass-lint:disable-line force-element-nesting force-pseudo-nesting position: relative; &::after { @@ -62,11 +62,13 @@ $accordionmenu-arrow-size: 6px !default; #{$global-right}: 1rem; } } - &.align-left .is-accordion-submenu-parent > a::after { - left: auto; + + &.align-left .is-accordion-submenu-parent > a::after { // sass-lint:disable-line force-element-nesting force-pseudo-nesting right: 1rem; + left: auto; } - &.align-right .is-accordion-submenu-parent > a::after { + + &.align-right .is-accordion-submenu-parent > a::after { // sass-lint:disable-line force-element-nesting force-pseudo-nesting right: auto; left: 1rem; } @@ -93,17 +95,17 @@ $accordionmenu-arrow-size: 6px !default; } padding: $accordionmenu-padding; } - - .is-accordion-submenu a { + + .is-accordion-submenu a { // sass-lint:disable-line force-element-nesting padding: $accordionmenu-submenu-padding; } - .nested.is-accordion-submenu { + .nested.is-accordion-submenu { // sass-lint:disable-line force-element-nesting @include menu-nested($accordionmenu-nested-margin); } &.align-#{$global-right} { - .nested.is-accordion-submenu { + .nested.is-accordion-submenu { // sass-lint:disable-line force-element-nesting @include menu-nested($accordionmenu-nested-margin, right); } } @@ -111,14 +113,14 @@ $accordionmenu-arrow-size: 6px !default; @if $accordionmenu-arrows { @include zf-accordion-menu-left-right-arrows; - .is-accordion-submenu-parent[aria-expanded='true'] > a::after { + .is-accordion-submenu-parent[aria-expanded='true'] > a::after { // sass-lint:disable-line force-element-nesting force-pseudo-nesting force-attribute-nesting transform: rotate(180deg); transform-origin: 50% 50%; } } } - .is-accordion-submenu li { + .is-accordion-submenu li { // sass-lint:disable-line force-element-nesting force-attribute-nesting @if $accordionmenu-border { border-right: 0; border-left: 0; @@ -138,11 +140,12 @@ $accordionmenu-arrow-size: 6px !default; position: absolute; top: 0; #{$global-right}: 0; - cursor: pointer; width: $accordionmenu-submenu-toggle-width; height: $accordionmenu-submenu-toggle-height; + cursor: pointer; + border-#{$global-left}: $accordion-submenu-toggle-border; @if $accordionmenu-submenu-toggle-background { @@ -160,7 +163,7 @@ $accordionmenu-arrow-size: 6px !default; } // Rotate the arrow when menu is open - .submenu-toggle[aria-expanded='true']::after { + .submenu-toggle[aria-expanded='true']::after { // sass-lint:disable-line force-element-nesting force-pseudo-nesting force-attribute-nesting transform: scaleY(-1); transform-origin: 50% 50%; } diff --git a/scss/components/_accordion.scss b/scss/components/_accordion.scss index 09a3493415..d35bac4dd5 100644 --- a/scss/components/_accordion.scss +++ b/scss/components/_accordion.scss @@ -61,6 +61,7 @@ $accordion-content-padding: 1rem !default; margin-#{$global-left}: 0; background: $background; list-style-type: none; + &[disabled] { .accordion-title { cursor: not-allowed; @@ -98,9 +99,11 @@ $accordion-content-padding: 1rem !default; line-height: 1; color: $color; - :last-child:not(.is-active) > & { - border-bottom: $border; - border-radius: 0 0 $global-radius $global-radius; + :last-child { + &:not(.is-active) > & { + border-bottom: $border; + border-radius: 0 0 $global-radius $global-radius; + } } &:hover, diff --git a/scss/components/_breadcrumbs.scss b/scss/components/_breadcrumbs.scss index 75eb9a1569..e48cc0b7db 100644 --- a/scss/components/_breadcrumbs.scss +++ b/scss/components/_breadcrumbs.scss @@ -82,12 +82,14 @@ $breadcrumbs-item-separator-color: $medium-gray !default; // Need to escape the backslash $separator: if($global-text-direction == 'ltr', $breadcrumbs-item-separator-item, $breadcrumbs-item-separator-item-rtl); - &:not(:last-child)::after { - position: relative; - margin: 0 $breadcrumbs-item-margin; - opacity: 1; - content: $separator; - color: $breadcrumbs-item-separator-color; + &:not(:last-child) { + &::after { + position: relative; + margin: 0 $breadcrumbs-item-margin; + opacity: 1; + content: $separator; + color: $breadcrumbs-item-separator-color; + } } } @else { diff --git a/scss/components/_button-group.scss b/scss/components/_button-group.scss index 2b2d0d75ac..6cb339c2ad 100644 --- a/scss/components/_button-group.scss +++ b/scss/components/_button-group.scss @@ -113,14 +113,16 @@ $buttongroup-radius-on-each: true !default; } @else { // One child - &:first-child:last-child { - width: calc(100% - #{$spacing}); + &:first-child { + &:last-child { + width: calc(100% - #{$spacing}); + } } // Two or more childreen @for $i from 2 through $buttongroup-expand-max { - &:first-child:nth-last-child(#{$i}) { - &, &:first-child:nth-last-child(#{$i}) ~ #{$selector} { + &:first-child:nth-last-child(#{$i}) { // sass-lint:disable-line force-pseudo-nesting + &, &:first-child:nth-last-child(#{$i}) ~ #{$selector} { // sass-lint:disable-line force-pseudo-nesting display: inline-block; width: calc(#{percentage(1 / $i)} - #{$spacing}); margin-#{$global-right}: $spacing; @@ -160,7 +162,7 @@ $buttongroup-radius-on-each: true !default; @if not $buttongroup-radius-on-each { border-radius: 0; - &:first-child{ + &:first-child { border-top-#{$global-left}-radius: $global-radius; border-top-#{$global-right}-radius: $global-radius; } @@ -212,7 +214,7 @@ $buttongroup-radius-on-each: true !default; // Sizes @each $size, $value in map-remove($button-sizes, default) { - &.#{$size} #{$buttongroup-child-selector} { + &.#{$size} #{$buttongroup-child-selector} { // sass-lint:disable-line force-element-nesting font-size: $value; } } @@ -238,7 +240,7 @@ $buttongroup-radius-on-each: true !default; @each $name, $color in $button-palette { $individual-selector: if($button-fill == $filling, null, ' #{$buttongroup-child-selector}.#{$name}'); - &.#{$name} #{$buttongroup-child-selector}, #{$individual-selector} { + &.#{$name} #{$buttongroup-child-selector}, #{$individual-selector} { // sass-lint:disable-line force-element-nesting @include button-fill-style($filling, $color, auto, auto); } } @@ -272,7 +274,7 @@ $buttongroup-radius-on-each: true !default; } } - &.stacked-for-small.expanded { // sass-lint:disable-line force-element-nesting + &.stacked-for-small.expanded { @include breakpoint(small only) { display: block; @@ -283,7 +285,7 @@ $buttongroup-radius-on-each: true !default; } } - &.stacked-for-medium.expanded { // sass-lint:disable-line force-element-nesting + &.stacked-for-medium.expanded { @include breakpoint(medium down) { display: block; diff --git a/scss/components/_button.scss b/scss/components/_button.scss index 492377f6f3..8a068698f5 100644 --- a/scss/components/_button.scss +++ b/scss/components/_button.scss @@ -99,8 +99,6 @@ $button-responsive-expanded: false !default; display: inline-block; vertical-align: middle; margin: $button-margin; - font-family: $button-font-family; - font-weight: $button-font-weight; @if (type-of($button-padding) == 'map') { @each $size, $padding in $button-padding { @@ -113,11 +111,13 @@ $button-responsive-expanded: false !default; padding: $button-padding; } - -webkit-appearance: none; border: $button-border; border-radius: $button-radius; transition: $button-transition; + font-family: $button-font-family; font-size: map-get($button-sizes, default); + font-weight: $button-font-weight; + -webkit-appearance: none; // sass-lint:disable-line no-vendor-prefixes line-height: 1; text-align: center; cursor: pointer; @@ -145,10 +145,7 @@ $button-responsive-expanded: false !default; @mixin button-fill( $fill: $button-fill ) { - @if $fill == solid { - // No base style is required for solid buttons, do nothing - } - @else if $fill == hollow { + @if $fill == hollow { @include button-hollow; } @else if $fill == clear { @@ -421,7 +418,8 @@ $button-responsive-expanded: false !default; margin-#{$global-left}: 0; } } - a.button { + + a.button { // sass-lint:disable-line no-qualifying-elements &:hover, &:focus { text-decoration: none; diff --git a/scss/components/_card.scss b/scss/components/_card.scss index c282b89dd0..a5bc78c86e 100644 --- a/scss/components/_card.scss +++ b/scss/components/_card.scss @@ -81,8 +81,8 @@ $card-margin-bottom: $global-margin !default; $padding: $card-padding ) { @if $global-flexbox { - flex: 0 1 auto; display: flex; + flex: 0 1 auto; } padding: $padding; diff --git a/scss/components/_drilldown.scss b/scss/components/_drilldown.scss index 1719080780..81b82cba7c 100644 --- a/scss/components/_drilldown.scss +++ b/scss/components/_drilldown.scss @@ -45,25 +45,26 @@ $drilldown-arrow-size: 6px !default; @mixin zf-drilldown-left-right-arrows { .is-drilldown-submenu-parent > a { position: relative; + &::after { + @include css-triangle($drilldown-arrow-size, $drilldown-arrow-color, $global-right); position: absolute; top: 50%; margin-top: -1 * $drilldown-arrow-size; #{$global-right}: 1rem; - @include css-triangle($drilldown-arrow-size, $drilldown-arrow-color, $global-right); } } &.align-left .is-drilldown-submenu-parent > a::after { - left: auto; - right: 1rem; @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, right); + right: 1rem; + left: auto; } &.align-right .is-drilldown-submenu-parent > a::after { + @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left); right: auto; left: 1rem; - @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left); } } @@ -134,8 +135,6 @@ $drilldown-arrow-size: 6px !default; display: inline-block; vertical-align: middle; margin-#{$global-right}: 0.75rem; // Creates space between the arrow and the text - - border-#{$global-left}-width: 0; } } } diff --git a/scss/components/_dropdown-menu.scss b/scss/components/_dropdown-menu.scss index 463f78a9ba..bcbc0f00c2 100644 --- a/scss/components/_dropdown-menu.scss +++ b/scss/components/_dropdown-menu.scss @@ -69,9 +69,9 @@ $dropdown-menu-item-background-active: transparent !default; } &.opens-left > a::after { + @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left); right: auto; left: 5px; - @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, left); } &.opens-right > a::after { @@ -81,7 +81,7 @@ $dropdown-menu-item-background-active: transparent !default; @mixin dropdown-menu-direction($dir: horizontal) { @if $dir == horizontal { - > li.opens-left { + > li.opens-left { // sass-lint:disable-line no-qualifying-elements > .is-dropdown-submenu { top: 100%; right: 0; @@ -89,7 +89,7 @@ $dropdown-menu-item-background-active: transparent !default; } } - > li.opens-right { + > li.opens-right { // sass-lint:disable-line no-qualifying-elements > .is-dropdown-submenu { top: 100%; right: auto; @@ -98,12 +98,12 @@ $dropdown-menu-item-background-active: transparent !default; } @if $dropdownmenu-arrows { - > li.is-dropdown-submenu-parent > a { + > li.is-dropdown-submenu-parent > a { // sass-lint:disable-line no-qualifying-elements position: relative; padding-#{$global-right}: $dropdownmenu-arrow-padding; } - > li.is-dropdown-submenu-parent > a::after { + > li.is-dropdown-submenu-parent > a::after { // sass-lint:disable-line no-qualifying-elements @include css-triangle($dropdownmenu-arrow-size, $dropdownmenu-arrow-color, down); #{$global-right}: 5px; #{$global-left}: auto; @@ -119,9 +119,9 @@ $dropdown-menu-item-background-active: transparent !default; &.opens-left { > .is-dropdown-submenu { + top: 0; right: 100%; left: auto; - top: 0; } } diff --git a/scss/components/_dropdown.scss b/scss/components/_dropdown.scss index 2d6366e943..53afeade83 100644 --- a/scss/components/_dropdown.scss +++ b/scss/components/_dropdown.scss @@ -43,11 +43,12 @@ $dropdown-sizes: ( position: absolute; z-index: 10; + display: none; + width: $dropdown-width; padding: $dropdown-padding; visibility: hidden; - display: none; border: $dropdown-border; border-radius: $dropdown-radius; background-color: $dropdown-background; @@ -61,8 +62,8 @@ $dropdown-sizes: ( } &.is-open { - visibility: visible; display: block; + visibility: visible; } } @@ -72,8 +73,10 @@ $dropdown-sizes: ( } @each $name, $size in $dropdown-sizes { - .dropdown-pane.#{$name} { - width: $size; + .dropdown-pane { + &.#{$name} { + width: $size; + } } } } diff --git a/scss/components/_flex.scss b/scss/components/_flex.scss index 47d0da4f11..eed2ebac76 100644 --- a/scss/components/_flex.scss +++ b/scss/components/_flex.scss @@ -80,8 +80,10 @@ $flexbox-responsive-breakpoints: true !default; // Horizontal alignment Specifically for Vertical Menu @each $hdir, $prop in map-remove($-zf-flex-justify, 'justify', 'spaced') { .align-#{$hdir} { - &.vertical.menu > li > a { - @include flex-align($x: $hdir); + &.vertical { + &.menu > li > a { + @include flex-align($x: $hdir); + } } } } diff --git a/scss/components/_table.scss b/scss/components/_table.scss index 44f92ed584..bf6df2659e 100644 --- a/scss/components/_table.scss +++ b/scss/components/_table.scss @@ -2,7 +2,7 @@ // foundation.zurb.com // Licensed under MIT Open Source -// sass-lint:disable force-element-nesting, no-qualifying-elements +// sass-lint:disable no-qualifying-elements //// /// @group table diff --git a/scss/forms/_error.scss b/scss/forms/_error.scss index 30e538913b..eb2fdc1bc2 100644 --- a/scss/forms/_error.scss +++ b/scss/forms/_error.scss @@ -45,6 +45,7 @@ $input-error-font-weight: $global-weight-bold !default; &:not(:focus) { border-color: $background; background-color: mix($background, $white, $background-lighten); + &::placeholder { color: $background; } diff --git a/scss/forms/_input-group.scss b/scss/forms/_input-group.scss index 804a27bf28..f74013c8ca 100644 --- a/scss/forms/_input-group.scss +++ b/scss/forms/_input-group.scss @@ -22,7 +22,7 @@ $input-prefix-border: 1px solid $medium-gray !default; $input-prefix-padding: 1rem !default; @mixin foundation-form-prepostfix { - $height: ($input-font-size * $input-line-height) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')) - rem-calc(1);; + $height: ($input-font-size * $input-line-height) + (get-side($input-padding, 'top') + get-side($input-padding, 'bottom')) - rem-calc(1); .input-group { display: if($global-flexbox, flex, table); @@ -117,8 +117,8 @@ $input-prefix-padding: 1rem !default; @extend %input-group-child; @if $global-flexbox { - height: auto; align-self: stretch; + height: auto; } @else { height: $height; @@ -131,8 +131,10 @@ $input-prefix-padding: 1rem !default; // Specificity bump needed to prevent override by buttons @if not $global-flexbox { - .input-group .input-group-button { - display: table-cell; + .input-group { + .input-group-button { + display: table-cell; + } } } } diff --git a/scss/forms/_meter.scss b/scss/forms/_meter.scss index c31b2f9e11..adc7457ac1 100644 --- a/scss/forms/_meter.scss +++ b/scss/forms/_meter.scss @@ -42,8 +42,8 @@ $meter-fill-bad: $alert-color !default; // `-moz-appearance: none` as a prefix and neglecting the webkit. /*! autoprefixer: off */ - -moz-appearance: none; - appearance: none; + -moz-appearance: none; // sass-lint:disable-line no-vendor-prefixes + appearance: none; @if has-value($meter-radius) { border-radius: $meter-radius; @@ -101,15 +101,15 @@ $meter-fill-bad: $alert-color !default; } } - &:-moz-meter-optimum::-moz-meter-bar { // sass-lint:disable-line force-pseudo-nesting + &:-moz-meter-optimum::-moz-meter-bar { background: $meter-fill-good; } - &:-moz-meter-sub-optimum::-moz-meter-bar { // sass-lint:disable-line force-pseudo-nesting + &:-moz-meter-sub-optimum::-moz-meter-bar { background: $meter-fill-medium; } - &:-moz-meter-sub-sub-optimum::-moz-meter-bar { // sass-lint:disable-line force-pseudo-nesting + &:-moz-meter-sub-sub-optimum::-moz-meter-bar { background: $meter-fill-bad; } } diff --git a/scss/forms/_progress.scss b/scss/forms/_progress.scss index 4dd37f1f35..a802fa9085 100644 --- a/scss/forms/_progress.scss +++ b/scss/forms/_progress.scss @@ -83,7 +83,7 @@ $progress-radius: $global-radius !default; } // For IE and Edge - &::-ms-fill { + &::-ms-fill { // sass-lint:disable-line no-vendor-prefixes @if hasvalue($progress-radius) { border-radius: $progress-radius; } diff --git a/scss/forms/_range.scss b/scss/forms/_range.scss index 96a720ad84..fa0de82f0e 100644 --- a/scss/forms/_range.scss +++ b/scss/forms/_range.scss @@ -39,7 +39,7 @@ $slider-opacity-disabled: 0.25 !default; $slider-radius: $global-radius !default; @mixin foundation-range-input { - input[type="range"] { // sass-lint:disable-line no-qualifying-elements + input[type='range'] { // sass-lint:disable-line no-qualifying-elements force-attribute-nesting $margin: ($slider-handle-height - $slider-height) / 2; display: block; @@ -78,7 +78,7 @@ $slider-radius: $global-radius !default; height: $slider-handle-height; margin-top: -$margin; - -webkit-appearance: none; + -webkit-appearance: none; // sass-lint:disable-line no-vendor-prefixes background: $slider-handle-background; @if has-value($slider-radius) { @@ -89,7 +89,7 @@ $slider-radius: $global-radius !default; // Firefox &::-moz-range-track { height: $slider-height; - -moz-appearance: none; + -moz-appearance: none; // sass-lint:disable-line no-vendor-prefixes background: $slider-background; } @@ -98,7 +98,7 @@ $slider-radius: $global-radius !default; height: $slider-handle-height; margin-top: -$margin; - -moz-appearance: none; + -moz-appearance: none; // sass-lint:disable-line no-vendor-prefixes background: $slider-handle-background; @if has-value($slider-radius) { diff --git a/scss/forms/_text.scss b/scss/forms/_text.scss index 4277490b27..ad7e00d2f7 100644 --- a/scss/forms/_text.scss +++ b/scss/forms/_text.scss @@ -155,18 +155,18 @@ $form-button-radius: $global-radius !default; } // Reset Normalize setting content-box to search elements - input[type='search'] { // sass-lint:disable-line no-qualifying-elements + input[type='search'] { // sass-lint:disable-line no-qualifying-elements force-attribute-nesting box-sizing: border-box; } // Number input styles [type='number'] { @if not $input-number-spinners { - -moz-appearance: textfield; // sass-lint:disable-line no-vendor-prefix + -moz-appearance: textfield; // sass-lint:disable-line no-vendor-prefixes &::-webkit-inner-spin-button, &::-webkit-outer-spin-button { - -webkit-appearance: none; // sass-lint:disable-line no-vendor-prefix + -webkit-appearance: none; // sass-lint:disable-line no-vendor-prefixes margin: 0; } }