HTML5 & CSS3

[HTML5 & CSS3] κ°€λ³€ λ ˆμ΄μ•„μ›ƒκ³Ό κ°€λ³€ μš”μ†Œ

μ½”λ”©ν•˜λŠ” λΆ•μ–΄ 2021. 2. 14. 04:19
λ°˜μ‘ν˜•

β–Ά κ°€λ³€ λ ˆμ΄μ•„μ›ƒκ³Ό κ°€λ³€ μš”μ†Œ

κ°€λ³€ κ·Έλ¦¬λ“œλ₯Ό μ‚¬μš©ν•˜λ©΄ μ‚¬μ΄νŠΈμ— μ ‘μ†ν•˜λŠ” λΈŒλΌμš°μ €μ˜ λ„ˆλΉ„μ— 따라 μ›Ή μš”μ†Œλ“€μ˜ λ„ˆλΉ„κ°€ μœ λ™μ μœΌλ‘œ 바뀐닀. μ΄λ•Œ μ›Ή μš”μ†Œ 쀑 λ„ˆλΉ„ 값을 κ°€μ§„ μš”μ†Œλ“€λ„ λΈŒλΌμš°μ € λ„ˆλΉ„κ°€ λ°”λ€” λ•Œ ν•¨κ»˜ λ°”λ€Œμ–΄μ•Ό μžμ—°μŠ€λŸ½κ²Œ ν‘œν˜„λ  수 μžˆλ‹€.

​

​

​

*κ°€λ³€ κΈ€κΌ΄

ν…μŠ€νŠΈ 크기λ₯Ό ν”½μ…€(px) λ‹¨μœ„λ‘œ μ§€μ •ν•˜λ©΄ 크기가 κ³ μ •λ˜κΈ° λ•Œλ¬Έμ— ν™”λ©΄ 크기가 μž‘μ€ κΈ°κΈ°μ—μ„œλŠ” 맀우 μž‘κ²Œ ν‘œμ‹œλœλ‹€. λ”°λΌμ„œ λ°˜μ‘ν˜• μ›Ή λ””μžμΈμ„ μœ„ν•΄ κ°€λ³€ κ·Έλ¦¬λ“œ λ ˆμ΄μ•„μ›ƒμ„ μ‚¬μš©ν•  λ•ŒλŠ” κΈ€μž 크기도 μœ λ™μ μœΌλ‘œ λ°”λ€Œμ–΄μ•Ό ν•œλ‹€. 이것을 'κ°€λ³€ κΈ€κΌ΄'이라고 ν•œλ‹€. κ°€μž₯ 많이 μ‚¬μš©ν•˜λŠ” λ‹¨μœ„λŠ” em κ³Ό rem 이닀.

​

-em λ‹¨μœ„

em λ‹¨μœ„λŠ” λΆ€λͺ¨ μš”μ†Œμ˜ 글꼴을 κΈ°μ€€μœΌλ‘œ ν•˜κΈ° λ•Œλ¬Έμ— μ€‘μ²©λœ λΆ€λͺ¨ μš”μ†Œμ˜ κΈ€μž 크기의 영ν–₯을 λ°›λŠ”λ‹€. 즉, em λ‹¨μœ„λ₯Ό μ‚¬μš©ν•˜λ©΄ λΆ€λͺ¨ μš”μ†Œμ˜ 크기에 따라 μžμ‹ μš”μ†Œμ˜ κΈ€μž 크기가 λ°”λ€ŒλŠ” 것이닀. μ΄λ ‡κ²Œ ν•˜λ©΄ em μˆ˜μΉ˜κ°€ 계속 λ‹¬λΌμ§„λ‹€λŠ” 단점이 μžˆλ‹€.

em λ‹¨μœ„ μ‚¬μš©ν•˜κΈ°

<style>
   .header-text {
      font-size: 2em;
   }
   .content {
      font-size: 1.5em;
   }
   .right-side {
      font-size: 1.5em;
   }
   footer {
      font-size: 1.5em;
   }
</style>

 

​

-rem λ‹¨μœ„

em의 단점을 μ—†μ• κΈ° μœ„ν•΄ λ§Œλ“  λ‹¨μœ„κ°€ rem이닀. remμ—μ„œ r은 루트(root)λ₯Ό λœ»ν•˜λ©° rem은 μ²˜μŒλΆ€ν„° κΈ°λ³Έ 크기λ₯Ό μ§€μ •ν•˜κΈ° λ•Œλ¬Έμ— 쀑간에 κΈ°λ³Έ 값이 λ°”λ€Œμ§€ μ•ŠλŠ”λ‹€.

<style>
   body {
      font-size: 16px;
   }
   .header-text {
      font-size: 2rem; β‘ 
   }
   .fluid-text {
      font-size: 1.5rem; β‘‘
   }
</style>

 

​

​

*κ°€λ³€ 이미지

μ΄λ―Έμ§€μ˜ 경우, μ›Ή λ¬Έμ„œμ— μ‚½μž…ν•  λ•ŒλΆ€ν„° μ΄λ―Έμ§€μ˜ 크기가 μ •ν•΄μ Έ 있기 λ•Œλ¬Έμ— λΈŒλΌμš°μ € 창의 크기가 λ³€ν•˜λ”λΌλ„ μ΄λ―Έμ§€μ˜ λ„ˆλΉ„ 값은 λ°”λ€Œμ§€ μ•ŠλŠ”λ‹€. κ·Έλž˜μ„œ κ°€λ³€ κ·Έλ¦¬λ“œ λ ˆμ΄μ•„μ›ƒμ—μ„œ μ΄λ―Έμ§€μ˜ λ„ˆλΉ„κ°€ λΈŒλΌμš°μ € ν™”λ©΄μ˜ λ„ˆλΉ„λ³΄λ‹€ 클 경우, λΈŒλΌμš°μ € ν™”λ©΄μ˜ λ„ˆλΉ„λ₯Ό 쀄이면 μ΄λ―Έμ§€μ˜ 일뢀가 κ°€λ €μ§„λ‹€.

​

<style>
   .content img {
      max-width: 100%;
      height: auto;
   }
</style>

 

​

-ν™”λ©΄ 해상도와 ν™”λ©΄ λ„ˆλΉ„μ— 따라 이미지 μ§€μ •ν•˜κΈ°

<picture>

<source srcset="images/shop-large.jpg" media="(min-width:1024px)">

<source srcset="images/shop-medium.jpg" media="(min-width:768px)">

<source srcset="images/shop-small.jpg" media="(min-width:320px)">

<img src="images/shop.jpg" alt="fill with coffee" style="width:100%;">

</picture>

​

​

 

​

*κ°€λ³€ λΉ„λ””μ˜€

κ°€λ³€ 이미지와 λ§ˆμ°¬κ°€μ§€λ‘œ λΉ„λ””μ˜€λ„ ν™”λ©΄μ˜ λ„ˆλΉ„κ°€ λ‹¬λΌμ§ˆ λ•Œλ§ˆλ‹€ λΉ„λ””μ˜€μ˜ λ„ˆλΉ„κ°€ λŠ˜μ–΄λ‚˜κ±°λ‚˜ 쀄어듀 수 μžˆλ„λ‘ ν•΄μ•Ό ν•œλ‹€. HTML5μ—μ„œ λ™μ˜μƒμ„ μ‚½μž…ν•  λ•ŒλŠ” 기본적으둜 <video> νƒœκ·Έλ₯Ό μ‚¬μš©ν•˜λ―€λ‘œ CSSλ₯Ό μ‚¬μš©ν•΄ max-width 속성을 100%둜 μ§€μ •ν•˜λ©΄ μ›Ή λ¬Έμ„œ μ•ˆμ—μ„œ 크기가 적절히 μ‘°μ ˆλœλ‹€.

​

<style>
   video {
      max-width:100%;
   }
</style>
<video src="cars.mp4" controls></video>

max-width:100%둜 μ„€μ •ν•œ κ°€λ³€ λΉ„λ””μ˜€λ₯Ό μ‚½μž…ν•œ μ˜ˆμ œμ΄λ‹€. 크둬 개발자 λ„κ΅¬μ˜ λ””λ°”μ΄μŠ€ 도ꡬλ₯Ό μ΄μš©ν•΄ PC와 νƒœλΈ”λ¦Ώ, λͺ¨λ°”일 ν¬κΈ°μ—μ„œ λΉ„λ””μ˜€ ν™”λ©΄ 크기가 적절히 μ‘°μ ˆλ˜λŠ” 것을 λ³Ό 수 μžˆλ‹€.

λ°˜μ‘ν˜•