Skip to content

Commit

Permalink
Change project SASS variables to native CSS
Browse files Browse the repository at this point in the history
- Removed unused `base-z-index` variable
- Removed unused `medium-gray` variable
  • Loading branch information
whmii committed Jun 14, 2019
1 parent 0444f91 commit 7458bd0
Show file tree
Hide file tree
Showing 8 changed files with 106 additions and 111 deletions.
10 changes: 9 additions & 1 deletion CHANGELOG.md
Expand Up @@ -5,7 +5,15 @@ project adheres to [Semantic Versioning](http://semver.org).

## [Unreleased (`master`)][unreleased]

Nothing at the moment.
### Changed

- Changed project Sass variables to native CSS variables
- Added variables for all font weights

### Removed

- Removed unused `base-z-index` variable
- Removed unused `medium-gray` variable

[unreleased]: https://github.com/thoughtbot/bitters/compare/v1.8.0...HEAD

Expand Down
8 changes: 4 additions & 4 deletions contrib/styles.scss
Expand Up @@ -2,18 +2,18 @@
@import "../core/base";

body {
margin: 0 0 ($base-spacing * 2);
margin: 0 0 calc(var(--base-spacing) * 2);
}

.container {
@include margin(null auto);
@include padding(null $base-spacing);
@include padding(null var(--base-spacing));
max-width: 500px;
}

.welcome-message {
@include padding($base-spacing null);
@include padding(var(--base-spacing) null);
background-color: #f2f2f2;
margin-bottom: $base-spacing;
margin-bottom: var(--base-spacing);
text-align: center;
}
28 changes: 8 additions & 20 deletions core/_buttons.scss
@@ -1,43 +1,31 @@
$_button-background-color: $action-color;
$_button-background-color-hover: shade($action-color, 20%);

#{$all-buttons} {
appearance: none;
background-color: $_button-background-color;
background-color: var(--action-color);
border: 0;
border-radius: $base-border-radius;
color: contrast-switch($_button-background-color);
border-radius: var(--base-border-radius);
color: inherit;
cursor: pointer;
display: inline-block;
font-family: $base-font-family;
font-family: var(--base-font-family);
font-size: 16px;
-webkit-font-smoothing: antialiased;
font-weight: 600;
line-height: 1;
padding: $small-spacing $base-spacing;
padding: var(--small-spacing) var(--base-spacing);
text-align: center;
text-decoration: none;
transition: background-color $base-duration $base-timing;
transition: background-color var(--base-duration) var(--base-timing);
user-select: none;
vertical-align: middle;
white-space: nowrap;

&:hover {
background-color: $_button-background-color-hover;
color: contrast-switch($_button-background-color-hover);
}

&:focus {
outline: $focus-outline;
outline-offset: $focus-outline-offset;
outline: var(--focus-outline);
outline-offset: var(--focus-outline-offset);
}

&:disabled {
cursor: not-allowed;
opacity: 0.5;

&:hover {
background-color: $_button-background-color;
}
}
}
53 changes: 26 additions & 27 deletions core/_forms.scss
@@ -1,6 +1,8 @@
$_form-background-color: #fff;
$_form-box-shadow: inset 0 1px 3px rgba(#000, 0.06);
$_form-box-shadow-focus: $_form-box-shadow, 0 0 5px rgba($action-color, 0.7);
:root {
--form-background-color: var(--viewport-background-color);
--form-box-shadow: inset 0 1px 3px rgba(#000, 0.06);
--form-box-shadow-focus: var(--form-box-shadow), 0 0 5px var(--action-color);
}

fieldset {
background-color: transparent;
Expand All @@ -11,57 +13,54 @@ fieldset {

legend {
font-weight: 600;
margin-bottom: $small-spacing / 2;
margin-bottom: var(--small-spacing);
padding: 0;
}

label {
display: block;
font-weight: 600;
margin-bottom: $small-spacing / 2;
margin-bottom: var(--small-spacing);
}

input,
select,
textarea {
display: block;
font-family: $base-font-family;
font-family: var(--base-font-family);
font-size: 16px;
}

#{$all-text-inputs} {
appearance: none;
background-color: $_form-background-color;
border: $base-border;
border-radius: $base-border-radius;
box-shadow: $_form-box-shadow;
background-color: var(--form-background-color);
border: var(--base-border);
border-radius: var(--base-border-radius);
box-shadow: var(--form-box-shadow);
box-sizing: border-box;
margin-bottom: $small-spacing;
padding: $base-spacing / 3;
transition: border-color $base-duration $base-timing;
margin-bottom: var(--small-spacing);
padding: calc(var(--base-spacing) / 3);
transition: border-color var(--base-duration) var(--base-timing);
width: 100%;

&:hover {
border-color: shade($base-border-color, 20%);
}

&:focus {
border-color: $action-color;
box-shadow: $_form-box-shadow-focus;
border-color: var(--action-color);
box-shadow: var(--form-box-shadow-focus);
outline: none;
}

&:disabled {
background-color: shade($_form-background-color, 5%);
background-color: var(--form-background-color);
cursor: not-allowed;

&:hover {
border: $base-border;
border: var(--base-border);
}
}

&::placeholder {
color: tint($base-font-color, 40%);
color: var(--base-font-color);
opacity: 0.25;
}
}

Expand All @@ -72,16 +71,16 @@ textarea {
[type="checkbox"],
[type="radio"] {
display: inline;
margin-right: $small-spacing / 2;
margin-right: var(--small-spacing);
}

[type="file"] {
margin-bottom: $small-spacing;
margin-bottom: var(--small-spacing);
width: 100%;
}

select {
margin-bottom: $small-spacing;
margin-bottom: var(--small-spacing);
width: 100%;
}

Expand All @@ -90,7 +89,7 @@ select {
[type="file"],
select {
&:focus {
outline: $focus-outline;
outline-offset: $focus-outline-offset;
outline: var(--focus-outline);
outline-offset: var(--focus-outline-offset);
}
}
2 changes: 1 addition & 1 deletion core/_layout.scss
@@ -1,5 +1,5 @@
html {
background-color: $viewport-background-color;
background-color: var(--viewport-background-color);
box-sizing: border-box;
}

Expand Down
8 changes: 4 additions & 4 deletions core/_tables.scss
@@ -1,13 +1,13 @@
table {
border-collapse: collapse;
margin: $base-spacing 0;
margin: var(--base-spacing) 0;
table-layout: fixed;
text-align: left;
width: 100%;
}

thead {
line-height: $heading-line-height;
line-height: var(--heading-line-height);
vertical-align: bottom;
}

Expand All @@ -16,7 +16,7 @@ tbody {
}

tr {
border-bottom: $base-border;
border-bottom: var(--base-border);
}

th {
Expand All @@ -25,5 +25,5 @@ th {

th,
td {
padding: $small-spacing $small-spacing $small-spacing 0;
padding: var(--small-spacing) var(--small-spacing) var(--small-spacing) 0;
}
28 changes: 14 additions & 14 deletions core/_typography.scss
@@ -1,8 +1,8 @@
html {
color: $base-font-color;
font-family: $base-font-family;
color: var(--base-font-color);
font-family: var(--base-font-family);
font-size: 100%;
line-height: $base-line-height;
line-height: var(--base-line-height);
}

h1,
Expand All @@ -11,35 +11,35 @@ h3,
h4,
h5,
h6 {
font-family: $heading-font-family;
font-family: var(--heading-font-family);
font-size: modular-scale(1);
line-height: $heading-line-height;
margin: 0 0 $small-spacing;
line-height: var(--heading-line-height);
margin: 0 0 var(--small-spacing);
}

p {
margin: 0 0 $small-spacing;
margin: 0 0 var(--small-spacing);
}

a {
color: $action-color;
color: var(--action-color);
text-decoration-skip: ink;
transition: color $base-duration $base-timing;
transition: color var(--base-duration) var(--base-timing);

&:hover {
color: shade($action-color, 25%);
color: var(--action-color);
}

&:focus {
outline: $focus-outline;
outline-offset: $focus-outline-offset;
outline: var(--focus-outline);
outline-offset: var(--focus-outline-offset);
}
}

hr {
border-bottom: $base-border;
border-bottom: var(--base-border);
border-left: 0;
border-right: 0;
border-top: 0;
margin: $base-spacing 0;
margin: var(--base-spacing) 0;
}
80 changes: 40 additions & 40 deletions core/_variables.scss
@@ -1,40 +1,40 @@
// Typography
$base-font-family: $font-stack-system;
$heading-font-family: $base-font-family;

// Line height
$base-line-height: 1.5;
$heading-line-height: 1.2;

// Other Sizes
$base-border-radius: 3px;
$base-spacing: 1.5em;
$small-spacing: $base-spacing / 2;
$base-z-index: 0;

// Colors
$blue: #1565c0;
$dark-gray: #333;
$medium-gray: #999;
$light-gray: #ddd;

// Font Colors
$base-font-color: $dark-gray;
$action-color: $blue;

// Border
$base-border-color: $light-gray;
$base-border: 1px solid $base-border-color;

// Background Colors
$viewport-background-color: #fff;

// Focus
$focus-outline-color: transparentize($action-color, 0.4);
$focus-outline-width: 3px;
$focus-outline: $focus-outline-width solid $focus-outline-color;
$focus-outline-offset: 2px;

// Animations
$base-duration: 150ms;
$base-timing: ease;
:root {
// Typography
--base-font-family: #{$font-stack-system};
--heading-font-family: var(--base-font-family);

// Line height
--base-line-height: 1.5;
--heading-line-height: 1.2;

// Other Sizes
--base-border-radius: 3px;
--base-spacing: 1.5rem;
--small-spacing: 0.75rem;

// Colors
--blue: #1565c0;
--dark-gray: #333;
--light-gray: #ddd;

// Font Colors
--base-font-color: var(--dark-gray);
--action-color: var(--blue);

// Border
--base-border-color: var(--light-gray);
--base-border: 1px solid var(--base-border-color);

// Background Colors
--viewport-background-color: #fff;

// Focus
--focus-outline-color: var(--action-color);
--focus-outline-width: 3px;
--focus-outline: var(--focus-outline-width) solid var(--focus-outline-color);
--focus-outline-offset: 2px;

// Animations
--base-duration: 150ms;
--base-timing: ease;
}

0 comments on commit 7458bd0

Please sign in to comment.