lbry-desktop/ui/scss/component/_button.scss

162 lines
2.7 KiB
SCSS
Raw Normal View History

2019-02-13 17:27:20 +01:00
@import '~@lbry/components/sass/button/_index.scss';
.button {
2019-05-01 07:16:12 +02:00
display: inline-block;
2019-11-07 20:39:22 +01:00
font-weight: var(--font-weight-base);
2019-05-01 07:16:12 +02:00
2019-01-09 03:21:36 +01:00
svg {
// Buttons that don't have a label
&:only-child {
2019-02-20 06:20:29 +01:00
color: inherit;
2019-07-21 23:31:22 +02:00
width: 1.3rem;
height: 1.3rem;
}
2019-01-09 03:21:36 +01:00
}
}
2017-04-09 17:06:23 +02:00
2019-06-27 22:27:38 +02:00
.button--primary {
2019-09-26 18:07:11 +02:00
background-color: $lbry-teal-5;
2019-06-27 22:27:38 +02:00
&:hover {
2019-07-21 23:31:22 +02:00
background-color: $lbry-teal-4;
2019-06-27 22:27:38 +02:00
}
2019-09-26 18:07:11 +02:00
2019-10-28 15:04:37 +01:00
&:active {
background-color: $lbry-teal-3;
}
2019-09-26 18:07:11 +02:00
&:disabled {
opacity: 0.5;
}
2019-02-20 06:20:29 +01:00
}
2019-05-01 07:16:12 +02:00
// Play/View button that is overlayed ontop of the video player
.button--icon {
height: 5rem;
width: 5rem;
border-radius: 2.5rem;
2019-06-17 22:32:38 +02:00
&:not(:hover) {
background-color: $lbry-teal-4;
}
2019-05-01 07:16:12 +02:00
}
2017-04-09 17:06:23 +02:00
2019-05-01 07:16:12 +02:00
.button--primary,
.button--inverse {
height: var(--button-height);
border-radius: var(--button-radius);
2019-10-03 23:40:54 +02:00
font-size: var(--font-body);
2019-07-21 23:31:22 +02:00
padding-top: 0;
padding-bottom: 0;
2019-05-01 07:16:12 +02:00
box-sizing: border-box;
}
2019-06-17 22:32:38 +02:00
.button--inverse {
border-color: $lbry-teal-4;
2019-07-21 23:31:22 +02:00
color: $lbry-teal-5;
2019-06-17 22:32:38 +02:00
&:hover {
color: $lbry-white;
background-color: $lbry-teal-4;
.icon {
stroke: $lbry-white;
}
}
2019-09-30 21:52:53 +02:00
[data-mode='dark'] & {
border-color: $lbry-teal-4;
color: $lbry-teal-3;
}
2019-06-17 22:32:38 +02:00
}
2019-06-11 20:10:58 +02:00
.button--alt {
padding: 0;
}
2019-07-21 23:31:22 +02:00
.button--link {
[data-mode='dark'] & {
2019-10-03 23:40:54 +02:00
color: $lbry-teal-4;
&:hover {
color: $lbry-teal-3;
}
2019-07-21 23:31:22 +02:00
}
}
2019-02-15 02:52:10 +01:00
.button--uri-indicator {
2019-02-20 06:20:29 +01:00
max-width: 100%;
2019-05-01 07:16:12 +02:00
height: 1.2em;
2019-05-06 06:49:16 +02:00
vertical-align: text-top;
2019-02-18 18:24:56 +01:00
text-align: left;
text-overflow: ellipsis;
2019-02-15 02:52:10 +01:00
transition: color 0.2s;
&:hover {
2019-06-11 20:10:58 +02:00
color: $lbry-teal-5;
}
2019-10-15 01:38:15 +02:00
.markdown-preview & {
2019-10-15 01:08:29 +02:00
height: initial;
vertical-align: initial;
2019-10-15 01:38:15 +02:00
color: $lbry-teal-5;
2019-10-15 01:08:29 +02:00
&:hover {
color: $lbry-teal-3;
2019-10-15 01:38:15 +02:00
}
[data-mode='dark'] & {
color: $lbry-teal-4;
&:hover {
color: $lbry-teal-3;
}
2019-10-15 01:08:29 +02:00
}
}
2019-06-11 20:10:58 +02:00
}
.button--close {
position: absolute;
top: var(--spacing-miniscule);
right: var(--spacing-miniscule);
padding: 0.3rem;
transition: all var(--transition-duration) var(--transition-style);
2019-08-13 07:35:13 +02:00
border-radius: var(--card-radius);
2019-06-11 20:10:58 +02:00
&:hover {
2019-06-17 22:32:38 +02:00
background-color: $lbry-black;
2019-06-11 20:10:58 +02:00
color: $lbry-white;
2019-02-15 02:52:10 +01:00
}
}
2019-06-11 20:10:58 +02:00
.button--subscribe {
vertical-align: text-top;
align-items: flex-start;
}
2019-08-14 20:09:45 +02:00
// Quick fix because this is a pain
// There is something weird with wrapping buttons. Some places we want to wrap and others we want to ellips
// Probably requires some nested style cleanup
.button--download-link {
.button__label {
white-space: normal;
text-align: left;
}
}
2019-06-17 22:32:38 +02:00
.button__content {
display: flex;
align-items: center;
min-width: 0;
2019-07-21 23:31:22 +02:00
height: 100%;
2019-06-17 22:32:38 +02:00
}
2019-06-11 20:10:58 +02:00
.button__label {
2019-06-17 22:32:38 +02:00
white-space: nowrap;
2019-06-11 20:10:58 +02:00
overflow: hidden;
text-overflow: ellipsis;
}
// Handle icons on the left or right side of the button label
svg + .button__label,
.button__label + svg {
2019-07-21 23:31:22 +02:00
margin-left: var(--spacing-small);
2019-06-11 20:10:58 +02:00
}