CSS의 calc()

CSS의 calc()

Front-end developer WONISM
Interested in ReactJS, RxJS and ReasonML.

CSS ν•¨μˆ˜ calc()λŠ” CSS3에 μΆ”κ°€λœ κΈ°λŠ₯ 쀑 ν•˜λ‚˜λ‘œ, 계산을 ν•΄μ£ΌλŠ” 속성이닀.
calc()λŠ” <length> <frequency>, <angle>, <time>, <number>, λ˜λŠ” <integer> κ°€ ν•„μš”ν•œ κ³³ μ–΄λ””μ„œλ“  μ‚¬μš© κ°€λŠ₯ν•˜λ©°, 기쑴에 μžλ°”μŠ€ν¬λ¦½νŠΈλ‘œ ν•˜λ˜ 계산을 λŒ€μ‹  해쀄 수 μžˆλ‹€.
예λ₯Ό λ“€μ–΄, "100% λ„ˆλΉ„μ—μ„œ 50px λ§ŒνΌμ„ λΊ€ 만큼의 λ„ˆλΉ„λ₯Ό μ‚¬μš©ν•˜κ³  μ‹Άλ‹€"λ©΄, λ‹€μŒκ³Ό 같이 μ½”λ“œλ₯Ό μž‘μ„±ν•œλ‹€.

* {
  box-sizing: border-box;
}

p {
  width : 95%; /* calc() λ₯Ό μ§€μ›ν•˜μ§€ μ•ŠλŠ” λΈŒλΌμš°μ €λ₯Ό μœ„ν•œ fallback */
  width : -webkit-calc(100% - 80px); /* WebKit */
  width : -moz-calc(100% - 80px); /* Firefox */
  width : -ms-calc(100% - 80px); /* MS Explorer */
  width : -o-calc(100% - 80px); /* Opera */
  width : calc(100% - 80px); /* Standard */
}

calc()λ‚΄λΆ€μ—μ„œλŠ” +, -, *, / λ“±μ˜ 사칙 연산이 κ°€λŠ₯ν•˜λ‹€.
이 λ•Œ, μ£Όμ˜ν•  것은 + μ—°μ‚°κ³Ό - μ—°μ‚° μ‹œ, λ°˜λ“œμ‹œ μ—°μ‚°μžμ˜ μ–‘μͺ½μ— 곡백이 ν•œ μΉΈ μžˆμ–΄μ•Ό ν•œλ‹€λŠ” 것이닀.
λ˜ν•œ, 같은 ν˜•μ‹(κΈΈμ΄λŠ” 길이 끼리, κ°λ„λŠ” 각도끼리)을 κ°–λŠ” ν”Όμ—°μ‚°μž 끼리만 연산이 κ°€λŠ₯ν•˜λ‹€.

λ‹€μŒ μ½”λ“œνŽœμ€ calc()와 vh(View Height, λ†’μ΄κ°’μ˜ 100λΆ„μ˜ 1 κ°’) λ“± CSSλ§Œμ„ μ‚¬μš©ν•˜μ—¬ κ΅¬ν˜„ν•œ Scroll Indicator 이닀.