[TIL] CSS Break down (Transition, Transform)

jay__ssΒ·2021λ…„ 11μ›” 9일
0
post-thumbnail

1. Transition???

CSS속성 값이 λ³€ν•  λ•Œ, 지정해쀀 μ‹œκ°„μ— κ±Έμ³μ„œ λ³€ν™”ν•˜κ²Œλ” ν•΄μ€€λ‹€(슀-λ₯΄λ₯΅)

μš°μ„  νŠΈλžœμ§€μ…˜μ€ λ‹¨μΆ•μ†μ„±μ΄μ–΄μ„œ μ—¬λŸ¬κ°œμ˜ κ°œλ³„μ†μ„±μ„ μ§€λ‹ˆκ³  μžˆλ‹€. κ·Έ 의미만 μ•Œλ©΄ μ‚¬μš©ν•  λ•Œ 어렀움이 μ—†λ‹€. μˆœμ„œλŒ€λ‘œ μ•Œμ•„λ³΄μž.

1.1 property

μΌμ–΄λ‚˜κ²Œλ” ν•΄μ£ΌλŠ” 속성듀을 지정할 수 μžˆλ‹€. 톡상 all을 μ‚¬μš©ν•œλ‹€.

transition-property: width, height;

λ§Œμ•½ 마우슀 μ˜€λ²„ μ‹œμ— 배경색도 λ‹€λ₯Έμƒ‰μœΌλ‘œ 지정을 ν•΄μ£Όμ—ˆμ–΄λ„, μœ„μ˜ 상황에선 배경색은 λ³€ν•˜μ§€ μ•ŠλŠ”λ‹€.

1.2 duration

말 κ·ΈλŒ€λ‘œ, μ§€μ†μ‹œκ°„μ΄λ‹€. λͺ‡ μ΄ˆμ— κ±Έμ³μ„œ λ³€ν™”λ₯Ό 보이게 ν•  것인지 μ •ν•œλ‹€.

1.3 timing-function

진행속도λ₯Ό 지정할 수 μžˆλ‹€. 예λ₯Ό λ“€μ–΄, μ²˜μŒμ—λŠ” λΉ λ₯΄κ²Œ λ³€ν™”ν•˜λ‹€κ°€ λ‚˜μ€‘μ—λŠ” 느리게 λ³€ν™”μ‹œν‚¬ 수 μžˆλ‹€. μ œκ³΅ν•΄μ£ΌλŠ” 값듀도 있고, cubic-bezier(n, n, n, n)으둜 μ»€μŠ€ν„°λ§ˆμ΄μ§• ν•  수 μžˆλ‹€.

transition-timing-function: ease; /*κΈ°λ³Έκ°’μž„*/
천천히 μ‹œμž‘λ˜μ–΄ κ·Έ λ‹€μŒμ—λŠ” 빨라지고 λ§ˆμ§€λ§‰μ—λŠ” λ‹€μ‹œ λŠλ €μ§‘λ‹ˆλ‹€. 

1.4 delay

λͺ‡ 초 후에 λ³€ν™”λ₯Ό 쀄지 μ„€μ •ν•œλ‹€. 기본값은 λ‹Ήμ—°νžˆ 0이며, 1s둜 μ§€μ •μ‹œ νŠΉμˆ˜ν•œ 상황일 λ•Œ(마우슀 μ˜€λ²„λΌκ³  κ°€μ •) μš”μ†Œμ— 마우슀λ₯Ό 올리고 1μ΄ˆλ’€μ— λ³€ν™”λ₯Ό κ΄€μ°°ν•  수 μžˆλ‹€.

2. Transform

μ—¬λŸ¬ ν˜•νƒœλ‘œ λ³€ν˜•ν•  λ•Œ μ‚¬μš©ν•˜λŠ” μ†μ„±μœΌλ‘œ, transitionκ³Ό ν•¨κ»˜ μ‚¬μš©ν•˜λ©΄ μΌμ’…μ˜ μ• λ‹ˆλ©”μ΄μ…˜κ³Ό 같이 λ³΄μ—¬μ§€λŠ” 짝꿍이닀. μ•„λž˜μ™€ 같은 속성듀이 μžˆλ‹€.

.box {
  width: 100px;
  height: 100px;
  background: blue;
  transition: all 1s;  
.box:hover {
  transform: scale(2);
  transform: rotate(180deg);
  transform: translate(100px, 100px);
  transform: skew(40deg);  

2.1 scale

ν™•λŒ€λ₯Ό ν•˜λŠ” κΈ°λŠ₯이닀. λ¬Όλ‘  μΆ•μ†Œλ„ κ°€λŠ₯ν•˜λ‹€.
scale(2)κ°€λ‘œμ„Έλ‘œ 두배, scale(0.5) κ°€λ‘œμ„Έλ‘œ λ°˜ν† λ§‰.

2.2 rotate

νšŒμ „μ„ μ‹œμΌœμ£ΌλŠ” κΈ°λŠ₯이며 λ‹¨μœ„λŠ” deg이닀.
rotate(180deg) 180도 νšŒμ „μ‹œν‚€κΈ°μ΄λ‹€.

2.3 translate

이동을 μ‹œμΌœμ£ΌλŠ” κΈ°λŠ₯이며 (xμΆ•, yμΆ•)이동이닀.(μˆ˜ν•™μ—μ„œ 보던 κ·Έλž˜ν”„μ™€λŠ” y좕이 λ°˜λŒ€λ°©ν–₯)
translate(100px, 100px); xμΆ•μœΌλ‘œ 100px 이동, yμΆ•μœΌλ‘œ 100px 이동을 μ˜λ―Έν•œλ‹€.

2.4 skew

λΉ„ν‹€μ–΄μ£ΌλŠ” 속성이닀.
transform: skew(40deg); 은 40도 비틀어주기이닀.

2.5 origin

μœ„μ˜ λͺ¨λ“  λ³€ν™”λ“€μ˜ 기쀀이 λ˜λŠ” 속성이닀.
transform-origin: 0 0; 으둜 xμΆ•, yμΆ• 0인 지점을 μ˜λ―Έν•œλ‹€.(기본값은 center)
μ΄λ™μ˜ 경우 λˆˆμ— λ„λŠ” 차이가 μ—†μ§€λ§Œ νšŒμ „μ„ μ‹œμΌœλ³΄λ©΄ 금방 μ•Œ 수 μžˆλ‹€.

😎New!!!

  • transform-origin은 가상 ν΄λž˜μŠ€μ— λΆ™μ΄λŠ” 것이 μ•„λ‹Œ ν•΄λ‹Ήν•˜λŠ” μš”μ†Œμ— μž‘μ„±ν•΄μ•Όν•œλ‹€!!!
  • transition vs animation
    • transition은 νŠΉμˆ˜ν•œ μƒν™©μ—μ„œλ§Œ μ• λ‹ˆλ©”μ΄μ…˜μ²˜λŸΌ λ³΄μ΄λŠ” 것이닀!!!
profile
πŸ˜‚κ·Έλƒ₯ μ§μ§„ν•˜λŠ” (μ˜ˆλΉ„)개발자

0개의 λŒ“κΈ€