annotate default/assets/scss/components/_buttons.scss @ 0:1d038bc9b3d2 default tip

Up:default
author Liny <dev@neowd.com>
date Sat, 31 May 2025 09:21:51 +0800
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
1 // main: ../style.scss
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
2 /********************************
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
3 *********************************
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
4 BUTTONS
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
5 *********************************
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
6 *********************************/
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
7 .btn {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
8 display: inline-flex;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
9 font-size: $btn-font-size;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
10 font-family: $btn-font-family;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
11 cursor: pointer;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
12 border-width: 2px;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
13 align-items: center;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
14
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
15 .btn-list & {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
16 margin-bottom: rem(10);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
17 margin-right: rem(10);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
18 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
19
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
20 &.border-thick { border-width: 2px }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
21 &.border-thicker { border-width: 3px }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
22 &.text-uppercase { letter-spacing: 0.1em }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
23
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
24 .list-icon {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
25 font-size: rem(18);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
26 vertical-align: middle;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
27 position: relative;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
28 top: rem(-1);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
29 font-weight: 400;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
30 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
31
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
32 .social-icons {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
33 font-size: rem(25);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
34 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
35
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
36 &.btn-lg {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
37 .list-icon { font-size: rem(24) }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
38 .social-icons { font-size: rem(40) }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
39 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
40
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
41 .caret {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
42 margin-left: rem(5);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
43 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
44
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
45 &.disabled,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
46 &:disabled {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
47 cursor: not-allowed;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
48 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
49
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
50 &[class*="bg"][class*="contrast"]:hover {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
51 color: #fff;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
52 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
53 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
54
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
55 .btn-lg {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
56 min-height: em(56);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
57 display: inline-flex;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
58 justify-content: center;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
59 align-items: center;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
60 @include button-size($input-btn-padding-y-lg, $input-btn-padding-x-lg, $input-btn-font-size-lg, $input-btn-line-height-lg, $btn-border-radius-lg);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
61 &:not(.btn-circle) { min-width: rem(140) }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
62 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
63
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
64 .btn-sm {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
65 @include button-size($input-btn-padding-y-sm, $input-btn-padding-x-sm, $input-btn-font-size-sm, $input-btn-line-height-sm, $btn-border-radius-sm);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
66 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
67
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
68 .btn-xs {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
69 @include button-size( 0, rem(5), $input-btn-font-size-sm, $input-btn-line-height-sm, $btn-border-radius-sm);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
70 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
71
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
72 .btn-rounded { border-radius: rem(100) }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
73
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
74 .btn-circle {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
75 border-radius: 100%;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
76 @include size( rem(50) );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
77 display: inline-flex;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
78 justify-content: center;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
79 align-items: center;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
80 padding: 0 !important;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
81 &.btn-lg { @include size( rem(70) ) }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
82 &.btn-sm { @include size( rem(30) ) }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
83 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
84
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
85 .btn-block {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
86 display: block;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
87 width: 100%;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
88 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
89
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
90
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
91 /* Button Colors
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
92 ========================*/
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
93 .btn:active {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
94 box-shadow: inset 0 2px 2px 2px rgba(0,0,0,0.02);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
95 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
96
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
97 @include buttons-variant(default, #555, #e4e7ea, #e4e7ea);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
98
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
99 .btn:focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
100 // box-shadow: inset 0 0 -4px 2px rgba(0,0,0,0.1);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
101 outline: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
102 box-shadow: none !important;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
103 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
104
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
105 .btn-outline-default { color: #555 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
106 .btn-primary.disabled:focus,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
107 .btn-primary[disabled]:focus,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
108 .btn-primary.disabled:hover,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
109 .btn-primary[disabled]:hover {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
110 background: $primary;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
111 border-color: $primary;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
112 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
113
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
114 // Alternative Button Variants
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
115 @each $col, $val in $theme-colors {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
116 .btn-#{$col} {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
117 @include theme-button-variant($val,$val,#fff);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
118 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
119 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
120 @each $col, $val in $colors {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
121 .btn-#{$col} {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
122 @include theme-button-variant($val,$val,#fff);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
123 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
124 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
125
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
126 @each $col, $val in $colors {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
127 .btn-outline-#{$col} {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
128 @include button-outline-variant($val);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
129 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
130 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
131
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
132 .btn-outline-white:hover {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
133 color: $color-scheme;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
134 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
135
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
136
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
137 .btn-outline-inverse {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
138 color: #fff;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
139 border: 2px solid #fff;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
140 background: transparent;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
141 &:hover {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
142 color: $color-scheme !important;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
143 background-color: #fff;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
144 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
145 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
146
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
147 /* Justified button groups
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
148 ========================*/
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
149
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
150 .btn-group-justified {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
151 display: flex;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
152 .btn,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
153 .btn-group {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
154 flex: 1;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
155 .btn { width: 100% }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
156 .dropdown-menu { left: auto }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
157 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
158 }