annotate default/assets/scss/vendors/bootstrap/_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 // scss-lint:disable QualifyingElement
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 // Base styles
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-block;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
9 font-weight: $btn-font-weight;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
10 text-align: center;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
11 white-space: nowrap;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
12 vertical-align: middle;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
13 user-select: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
14 border: $input-btn-border-width solid transparent;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
15 @include button-size($input-btn-padding-y, $input-btn-padding-x, $font-size-base, $input-btn-line-height, $btn-border-radius);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
16 @include transition($btn-transition);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
17
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
18 // Share hover and focus styles
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
19 @include hover-focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
20 text-decoration: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
21 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
22 &:focus,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
23 &.focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
24 outline: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
25 box-shadow: $btn-focus-box-shadow;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
26 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
27
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
28 // Disabled comes first so active can properly restyle
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
29 &.disabled,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
30 &:disabled {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
31 opacity: .65;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
32 @include box-shadow(none);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
33 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
34
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
35 &:active,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
36 &.active {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
37 background-image: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
38 @include box-shadow($btn-focus-box-shadow, $btn-active-box-shadow);
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
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
42 // Future-proof disabling of clicks on `<a>` elements
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
43 a.btn.disabled,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
44 fieldset[disabled] a.btn {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
45 pointer-events: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
46 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
47
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 // Alternate buttons
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
51 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
52
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
53 @each $color, $value in $theme-colors {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
54 .btn-#{$color} {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
55 @include button-variant($value, $value);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
56 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
57 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
58
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
59 @each $color, $value in $theme-colors {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
60 .btn-outline-#{$color} {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
61 @include button-outline-variant($value, #fff);
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
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
65
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
66 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
67 // Link buttons
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
68 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
69
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
70 // Make a button look and behave like a link
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
71 .btn-link {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
72 font-weight: $font-weight-normal;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
73 color: $link-color;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
74 border-radius: 0;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
75
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
76 &,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
77 &:active,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
78 &.active,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
79 &:disabled {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
80 background-color: transparent;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
81 @include box-shadow(none);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
82 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
83 &,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
84 &:focus,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
85 &:active {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
86 border-color: transparent;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
87 box-shadow: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
88 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
89 @include hover {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
90 border-color: transparent;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
91 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
92 @include hover-focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
93 color: $link-hover-color;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
94 text-decoration: $link-hover-decoration;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
95 background-color: transparent;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
96 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
97 &:disabled {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
98 color: $btn-link-disabled-color;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
99
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
100 @include hover-focus {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
101 text-decoration: none;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
102 }
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
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
106
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
107 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
108 // Button Sizes
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
109 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
110
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
111 .btn-lg {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
112 @include button-size($input-btn-padding-y-lg, $input-btn-padding-x-lg, $font-size-lg, $line-height-lg, $btn-border-radius-lg);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
113 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
114
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
115 .btn-sm {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
116 @include button-size($input-btn-padding-y-sm, $input-btn-padding-x-sm, $font-size-sm, $line-height-sm, $btn-border-radius-sm);
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
117 }
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 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
121 // Block button
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
122 //
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
123
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
124 .btn-block {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
125 display: block;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
126 width: 100%;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
127 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
128
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
129 // Vertically space out multiple block buttons
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
130 .btn-block + .btn-block {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
131 margin-top: $btn-block-spacing-y;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
132 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
133
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
134 // Specificity overrides
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
135 input[type="submit"],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
136 input[type="reset"],
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
137 input[type="button"] {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
138 &.btn-block {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
139 width: 100%;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
140 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
141 }