lbry.tech/.vuepress/scss/init/_extends.scss
ポール ウェッブ e447ebeb26 Final design solidified
2018-05-01 17:45:31 -05:00

181 lines
2.9 KiB
SCSS

// B U T T O N S
.__button-base {
border: 1px solid;
font-size: 1rem;
letter-spacing: 0.025rem;
position: relative;
transition: all 0.2s;
}
.__button-basic {
@extend .__button-base;
@extend .__button-padding-vertical;
background-color: transparent;
border-color: transparent;
&::after {
width: 100%; height: 2px;
bottom: 2px; left: 0;
content: "";
display: block;
transition: background-color 0.2s;
}
&:not(:hover)::after {
background-color: transparent;
}
&:hover::after {
background-color: $black;
}
}
.__button-black {
@extend .__button-base;
@extend .__button-padding-vertical;
@extend .__button-padding-horizontal;
&:not(:hover) {
background-color: $black;
border-color: $white;
box-shadow: 2px 2px 0 $white;
color: $white;
}
&:hover {
background-color: $white;
border-color: $black;
box-shadow: 2px 2px 0 $black;
color: inherit;
}
}
.__button-white {
@extend .__button-base;
@extend .__button-padding-vertical;
@extend .__button-padding-horizontal;
&:not(:hover) {
background-color: $white;
border-color: transparent;
box-shadow: 2px 2px 0 $black;
color: inherit;
}
&:hover {
background-color: $black;
border-color: $white;
box-shadow: 2px 2px 0 $white;
color: $white;
}
}
.__button-gray {
@extend .__button-base;
@extend .__button-padding-vertical;
@extend .__button-padding-horizontal;
background-color: $white;
&:not(:hover) {
border-color: transparent;
box-shadow: 2px 2px 0 $black;
}
&:hover {
border-color: $teal;
box-shadow: 2px 2px 0 $teal;
color: $teal;
}
}
.__button-padding-vertical {
padding-top: 0.5rem;
padding-bottom: 0.5rem;
}
.__button-padding-horizontal {
padding-right: 1rem;
padding-left: 1rem;
}
// G R I D
.__grid {
&:first-of-type {
cursor: default;
font-size: 0.8rem;
font-weight: 600;
letter-spacing: 0.2rem;
text-transform: uppercase;
}
&:not(:first-of-type) {
border-left: 1px solid $gray;
.col {
border-bottom-style: solid;
border-bottom-width: 1px;
&:last-of-type {
border-right-style: solid;
border-right-width: 1px;
}
&:not(.red):not(.orange):not(.yellow):not(.green) {
border-color: $gray;
}
}
}
@media (min-width: 600px) {
display: table;
table-layout: fixed;
width: 100%;
.col {
display: table-cell;
}
}
}
.col {
padding: 0.5rem 1rem;
width: 100%;
&:not(:first-of-type) {
text-align: right;
}
}
// Padded columns
.grid-padded {
@media (min-width: 600px) {
margin-right: -1rem;
margin-left: -1rem;
.grid {
border-spacing: 1rem 0;
}
}
}
// Vertically center grid content
// Requires content within the column to be inline/inline-block
.grid-align-middle .col {
vertical-align: middle;
}
.grid-reverse {
direction: rtl;
.col {
direction: ltr;
}
}