본문 바로가기

퍼블리싱/HTML | CSS | Javascript

마음에 드는 버튼스타일

https://codepen.io/seanfree/pen/NpMevj

 

여기서 가져왔당

 

HTML

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<div class="wrapper">
 
  <h2>Clockwise</h2>
 
  <div class="row">
 
    <div class="button clockwise horizontal">Horizontal</div>
 
    <div class="button clockwise vertical">Vertical</div>
 
    <div class="button clockwise both">Both
 
      <div class="inner"></div>
 
    </div>
 
  </div>
 
  <h2>Counter-clockwise</h2>
 
  <div class="row">
 
    <div class="button counterclockwise horizontal">Horizontal</div>
 
    <div class="button counterclockwise vertical">Vertical</div>
 
    <div class="button counterclockwise both">Both
 
      <div class="inner"></div>
 
    </div>
 
  </div>
 
cs

 

CSS

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
html, body
 
 color: white
 
 background: rgb(50,60,70)
 
 font-weight: lighter
 
h1, h2, h3, h4
 
 font-family: 'Oswald'
 
.wrapper
 
 display: flex
 
 flex-direction: column
 
 flex-wrap: wrap
 
 align-items: center
 
 justify-content: center
 
 width: 100vw
 
 height: 100vh
 
 .row
 
  display: flex
 
  margin: 10px 0
 
 h2
 
  font-size: 1.8em
 
.button
 
 position: relative
 
 cursor: pointer
 
 color: white
 
 font-family: 'Lato'
 
 font-size: 1.5em
 
 padding: 0.5em 1em 0.65em
 
 margin: 0 10px
 
 background: rgb(60,70,80)
 
 .inner
 
  position: absolute
 
  top: 0
 
  left: 0
 
  width: 100%
 
  height: 100%
 
 &:nth-of-type(1)
 
  &:before, &:after, .inner:before, .inner:after
 
   background-color: #ffa726
 
 &:nth-of-type(2)
 
  &:before, &:after, .inner:before, .inner:after
 
   background-color: #26a69a
 
 &:nth-of-type(3)
 
  &:before, &:after, .inner:before, .inner:after
 
   background-color: #7e57c2
 
 &:before, &:after, .inner:before, .inner:after
 
  position: absolute
 
  content: ""
 
  display: block
 
  transition: transform 0.3s
 
 &.horizontal, &.both
 
  &:before, &:after
 
   left: 0
 
   width: 100%
 
   height: 2px
 
   transform: scaleX(0)
 
  .inner
 
   &:before, &:after
 
    top: 0
 
    width: 2px
 
    height: 100%
 
    transform: scaleY(0)
 
   &:before
 
    left: 0
 
   &:after
 
    right: 0
 
   &:hover
 
    &:before, &:after
 
     transform: scaleY(1)
 
  &:before
 
   top: 0
 
  &:after
 
   bottom: 0
 
  &:hover
 
   &:before, &:after
 
    transform: scaleX(1)
 
   .inner:before, .inner:after
 
    transform: scaleY(1)
 
  &.clockwise
 
   .inner
 
    &:before
 
     transform-origin: top center
 
    &:after
 
     transform-origin: bottom center
 
   &:before
 
    transform-origin: right center
 
   &:after
 
    transform-origin: left center
 
   &:hover
 
    .inner
 
     &:before
 
      transform-origin: bottom center
 
     &:after
 
      transform-origin: top center
 
    &:before
 
     transform-origin: left center
 
    &:after
 
     transform-origin: right center
 
  &.counterclockwise
 
   .inner
 
    &:before
 
     transform-origin: bottom center
 
    &:after
 
     transform-origin: top center
 
   &:before
 
    transform-origin: left center
 
   &:after
 
    transform-origin: right center
 
   &:hover
 
    .inner
 
     &:before
 
      transform-origin: top center
 
     &:after
 
      transform-origin: bottom center
 
    &:before
 
     transform-origin: right center
 
    &:after
 
     transform-origin: left center
 
 &.vertical
 
  &:before, &:after
 
   top: 0
 
   width: 2px
 
   height: 100%
 
   transform: scaleY(0)
 
  &:before
 
   left: 0
 
  &:after
 
   right: 0
 
  &:hover
 
   &:before, &:after
 
    transform: scaleY(1)
 
  &.clockwise
 
   &:before
 
    transform-origin: top center
 
   &:after
 
    transform-origin: bottom center
 
   &:hover
 
    &:before
 
     transform-origin: bottom center
 
    &:after
 
     transform-origin: top center
 
  &.counterclockwise
 
   &:before
 
    transform-origin: bottom center
 
   &:after
 
    transform-origin: top center
 
   &:hover
 
    &:before
 
     transform-origin: top center
 
    &:after
 
     transform-origin: bottom center
 
.codepen-link
 
 position: absolute
 
 bottom: 30px
 
 right: 30px
 
 height: 40px
 
 width: 40px
 
 z-index: 10
 
 border-radius: 50%
 
 box-sizing: border-box
 
 background-image: url('https://s3-us-west-2.amazonaws.com/s.cdpn.io/544318/logo.jpg')
 
 background-position: center center
 
 background-size: cover
 
 opacity: 0.5
 
 transition: all 0.25s
 
 &:hover
 
  opacity: 0.8
 
  box-shadow: 0 0 6px #efefef
 
cs

 

이제 알았는데 CSS에 {}가 다 어디로 가브렀대냐...;ㅅ; 

728x90