PluginProbe
Easy Elements for Elementor – Addons & Website Templates / 1.5.0
Easy Elements for Elementor – Addons & Website Templates v1.5.0
1.5.3 1.5.2 1.5.1 1.5.0 1.4.9 1.4.6 1.4.7 1.4.8 1.4.5 1.4.4 1.4.3 1.2.7 1.2.8 1.2.9 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 All 47 releases
easy-elements / widgets / button / css / button.scss

button.scss in Easy Elements for Elementor – Addons & Website Templates 1.5.0, at widgets/button/css/button.scss

287 lines 5.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 :root {
2 --e-global-color-primary: #FFD012;
3 --e-global-color-secondary: #0B3665;
4 --eel-gradient-1: #4750CC;
5 --eel-gradient-2: #EF5CE8;
6 --eel-gradient-3: #EFC7AE;
7 }
8
9 .eel-button-gradient {
10 position: relative;
11 overflow: hidden;
12 &::after,
13 &::before {
14 content: "";
15 position: absolute;
16 top: 0;
17 left: 0;
18 width: 100%;
19 height: 100%;
20 transition: opacity 0.6s ease-in-out;
21 z-index: 0;
22 }
23
24 &::after {
25 background: linear-gradient(
26 68.75deg,
27 var(--eel-gradient-1) 9.78%,
28 var(--eel-gradient-2) 58.79%,
29 var(--eel-gradient-3) 92.67%
30 );
31 opacity: 1;
32 }
33
34 &::before {
35 background: linear-gradient(
36 -68.75deg,
37 var(--eel-gradient-1) 9.78%,
38 var(--eel-gradient-2) 58.79%,
39 var(--eel-gradient-3) 92.67%
40 );
41 opacity: 0; // default hidden
42 }
43
44 &:hover {
45 &::after {
46 opacity: 0;
47 }
48 &::before {
49 opacity: 1;
50 }
51 }
52 span {
53 position: relative;
54 z-index: 1;
55 }
56 }
57
58
59 // Base Button Styles
60 .elementor-widget-eel-button .eel-button {
61 display: inline-flex;
62 align-items: center;
63 justify-content: center;
64 text-decoration: none;
65 border: none;
66 cursor: pointer;
67 font-family: inherit;
68 text-align: center;
69 vertical-align: middle;
70 user-select: none;
71 transition: all 0.5s ease;
72 position: relative;
73 overflow: hidden;
74 white-space: nowrap;
75 line-height: 1.5;
76 padding: 10px 20px;
77 border-radius: 5px;
78 &:hover {
79 text-decoration: none;
80 transform: translateY(-1px);
81 }
82 }
83
84 .eel-button-primary {
85 background-color: var(--e-global-color-primary);
86 color: #ffffff;
87 &:hover {
88 background-color: var(--e-global-color-secondary);
89 border-color: var(--e-global-color-secondary);
90 }
91 }
92 .eel-button-outline {
93 background-color: transparent;
94 color: var(--e-global-color-secondary);
95 border: 2px solid var(--e-global-color-secondary);
96 &:hover {
97 background-color: var(--e-global-color-primary);
98 }
99 }
100
101 // Icon Styles - Comprehensive targeting
102 .eel-button-icon-before,
103 .eel-button-icon-after {
104 display: inline-flex;
105 align-items: center;
106 justify-content: center;
107 transition: all 0.3s ease;
108 }
109
110 .eel-button-icon-before {
111 margin-right: 8px;
112 }
113
114 .eel-button-icon-after {
115 margin-left: 8px;
116 }
117
118 // Elementor Icon Styles
119 .eel-button .elementor-icon {
120 display: inline-flex;
121 align-items: center;
122 justify-content: center;
123 transition: all 0.3s ease;
124 i {
125 font-size: inherit;
126 color: inherit;
127 }
128 svg {
129 width: 1em;
130 height: 1em;
131 }
132 }
133
134 // Ensure icons inherit button text color
135 .eel-button .elementor-icon,
136 .eel-button .elementor-icon i,
137 .eel-button .elementor-icon svg {
138 color: inherit;
139 }
140
141 // Additional icon targeting for better compatibility
142 .eel-button {
143 i,
144 svg,
145 .elementor-icon,
146 .elementor-icon i,
147 .elementor-icon svg,
148 .eicon,
149 .fas,
150 .far,
151 .fab,
152 .fa {
153 color: inherit;
154 font-size: inherit;
155 }
156
157 svg,
158 .elementor-icon svg {
159 width: 1em;
160 height: 1em;
161 }
162 }
163
164 // Uploaded SVG and Image Icon Styles
165 .elementor-widget-eel-button .eel-button {
166 img,
167 .eel-button-icon-before img,
168 .eel-button-icon-after img {
169 width: 1em;
170 height: 1em;
171 object-fit: contain;
172 vertical-align: middle;
173 }
174
175 .eel-button-icon-before svg,
176 .eel-button-icon-after svg {
177 width: 1em;
178 height: 1em;
179 color: inherit;
180 vertical-align: middle;
181 }
182
183 // Ensure uploaded SVG icons inherit button text color
184 .eel-button-icon-before svg path,
185 .eel-button-icon-after svg path {
186 fill: currentColor;
187 }
188 }
189
190 // Button Text
191 .eel-button-text {
192 display: inline-block;
193 vertical-align: middle;
194 }
195
196
197 @keyframes eel-button-spin {
198 0% { transform: rotate(0deg); }
199 100% { transform: rotate(360deg); }
200 }
201
202 .eel-button-icon_btn{
203 background: transparent;
204 .eel-button-icon-after,
205 .eel-button-icon-before{
206 display: inline-grid;
207 place-content: center;
208 place-items: center;
209 width: 64px;
210 height: 64px;
211 border-radius: 50%;
212 background-color: var(--e-global-color-primary);
213 color: #ffffff;
214 margin-right: 16px;
215 }
216 }
217
218
219 .hover-gradient {
220 .eel-button-primary {
221 position: relative;
222 border: 2px solid transparent;
223 overflow: hidden;
224 &::before {
225 content: "";
226 position: absolute;
227 top: 0;
228 left: 0;
229 width: 100%;
230 height: 100%;
231 transition: opacity 0.6s ease-in-out;
232 z-index: 0;
233 background: linear-gradient(
234 68.75deg,
235 var(--eel-gradient-1) 9.78%,
236 var(--eel-gradient-2) 58.79%,
237 var(--eel-gradient-3) 92.67%
238 );
239 opacity: 0;
240 }
241
242 &:hover {
243 background-color: unset !important;
244 &::before {
245 opacity: 1;
246 }
247 }
248
249 span {
250 position: relative;
251 z-index: 1;
252 }
253 }
254 }
255
256
257 // gradient border button
258 .eel-button {
259 &.eel-button-border-gradient {
260 z-index: 1;
261 transition: all 0.4s ease;
262 position: relative;
263 background: #fff;
264 color: currentColor;
265 &::before {
266 content: "";
267 position: absolute;
268 inset: 0;
269 padding: 2px; /* border width */
270 background: linear-gradient(90deg, #A53E1B 0%, #173998 100%);
271 -webkit-mask:
272 linear-gradient(#fff 0 0) content-box,
273 linear-gradient(#fff 0 0);
274 -webkit-mask-composite: xor;
275 mask-composite: exclude;
276 z-index: -1;
277 transition: background 0.5s ease;
278 }
279
280
281 &:hover {
282 color: #fff;
283 background: linear-gradient(90deg, #A53E1B, #173998);
284 }
285 }
286 }
287