๐ ๊ฐ๋ฐ ๊ณต๋ถ 1๊ฐ์ ์ฐจ์ธ to-be ๊ฐ๋ฐ์์ ์์ต ๋ธ๋ก๊ทธ๐๏พ Aug 2 ~ 6, 2021
Assignment #2
Q. site์ image๋ฅผ ๋ฃ๋ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง๊ฐ ์๋๋ฐ, ํ๋๋ HTML์ image tag(์์)๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด๊ณ , ๋ค๋ฅธ ํ๋๋ CSS file์ image tag(์์)์ background-image ์์ฑ์ ์ถ๊ฐํ๋ ๊ฒ์ด๋ค. ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ฐจ์ด์ ๊ณผ ๊ฐ๊ฐ ์ด๋ ํ ๊ฒฝ์ฐ์ ์ฌ์ฉํ๋ฉด ์ข์์ง ํ์ตํ์.
(โ ์๋ฃ๋ฅผ ์ฐพ๋ค๋ณด๋ ์ง๋ฌธ์ ์กฐ๊ธ ๋ฐ๊พธ๋ฉด ์ข์ ๊ฒ ๊ฐ์์ ์์ (์ ๋ฐ๊ฟจ๋์ง๋ -์๋-์์ ์ค๋ช
))
Q. site์ ๋ฐฐ๊ฒฝ image๋ฅผ ๋ฃ๋ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง๊ฐ ์๋๋ฐ, ํ๋๋~ (์ดํ ๋๋ฌธ).
A. ์ผ๋ฐ์ ์ธ web site๋ฅผ ๋ง๋ค ๋ ํ์๋ก ์๊ฐํด์ผ ํ ๊ฒ๋ค์ด ์๋ค. (์๋ฌด์๊ฒ ๊ณต๊ฐํ๊ณ ์ถ์ง ์์ ๊ฐ์ธ ์น ์ฌ์ดํธ๊ฐ์ ๊ฑฐ๋ผ๋ฉด ํ์ ์์์ง๋ ๋ชจ๋ฅด์ง๋ง.)
์์ฉ web site๋ ์ ๋ณด๋ ฅ์ด ์ฃผ์ํ ๊ฒ์ด๋ค. ์ ๋ณด๋ ฅ์ด ๊ณง ๊ฒฝ์๋ ฅ์ด๊ณ , ์ด ๊ฒฝ์๋ ฅ์ ๋ฐํ์ผ๋ก ๋ ๋ง์ ์ฌ์ฉ์๊ฐ ๊ทธ web site๋ฅผ ๋ฐฉ๋ฌธํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ด๋ค. (์ ๋ณด์ ๊ตฌ๋งค ๊ธฐ๋ฅ์ ๋ํ๋ฉด ์ผํ๋ชฐ์ด๋ฏ๋ก '์ ๋ณด๋ ฅ์ด ์ฃผ์ํ ์น ์ฌ์ดํธ'๋ฅผ ๋์ค์ ์ํ ๋ชจ๋ ์น ์ฌ์ดํธ๋ก ํต์ฉํด์ ์ค๋ช ํด์ผ๊ฒ ๋ค.)
์ต๋ํ ๋ง์ ์ฌ์ฉ์์๊ฒ ๋ ธ์ถ๋๋ ๊ฒ ๋ชฉํ์ธ web site๋ผ๋ฉด, ์ ๋ณด๋ฅผ ์ฌ์ฉ์ ํธ์์ ๋ง๊ฒ ์ ๋ฆฌํ๊ณ ๋ฐฐ์นํด์ผ ํ๋ค. ๊ทธ๋ฐ๋ฐ ์ด๋ ๊ฒ ํ๋ ๋ฐ์๋ ์ฝ์์ด ์๋ค. ์ด๋ฌํ ์ฝ์์ด ์๋ค๋ฉด ๊ฐ๋ฐ์๋ง๋ค ๋ค๋ฅด๊ฒ codingํ ๊ฒ์ด๊ณ , ์์ ์ code์ ๋ํด ๋ณธ์ธ์ ๋ง์กฑํ ์ง ๋ชจ๋ฅด์ง๋ง ๋ค๋ฅธ ์ฌ๋์ด ๋ณผ ๋ ๊ฐ๋ ์ฑ์ด ๋จ์ด์ง๋ code์ ๋์ด์ ์ง๋์ง ์์ ์ ์๋ค. ์ฌ์ง์ด HTML ํ์ผ์ ์ฌ๋๋ฟ๋ง์ด ์๋๋ผ ๋ค๋ฅธ program(๊ธฐ๊ณ)์ผ๋ก๋ถํฐ๋ ์ฝํ์ผ ํ๊ณ , ์๋ฏธ๋ ํ์ ๋์ด์ผ ํ๋ค. ์ด๋ฅผ ์ํด ์ผ์ ํ ๊ท์น์ ์ ํ๊ณ ์ด ๊ท์น์ ์ง๊ธ๋ ๋ฐ์ , ๊ด๋ฆฌ๋๊ณ ์๋ค. (1998๋ ์ ํ ๋ฒ๋์ค ๋ฆฌ ๊ฒฝ์ด ์ ์, ์ดํ W3C์์ ๊พธ์คํ ํ์คํ ์์ ์ค์ด๋ค.) ์ด ๊ท์น์์ ์ญํ ์ด ํฉ์๋ tag๋ฅผ semantic tag(semantic element)๋ผ ํ๊ณ , semantic tag๋ก ์ ์ง์ฌ์ง web site๋ฅผ semantic web์ด๋ผ๊ณ ํ๋ค.
semantic์ '์๋ฏธ๊ฐ ์๋ค.'๋ ๋ป์ผ๋ก, tag์๋ semantic tag์ non-semantic tag๊ฐ ์๋ค. ์ฆ, ์๋ฏธ๊ฐ ์๋ tag๊ฐ ์๊ณ , ์๋ฏธ๊ฐ ์๋ tag๊ฐ ์๋ค. ์๋ฏธ๊ฐ ์๋ non-semantic tag๋ผ๊ณ ํด์ ์ฌ์ฉํ ํ์๊ฐ ์๋ค๋ ๋ป์ ์๋๊ณ , ํด๋น ์น ์ฌ์ดํธ์ ๋ชฉ์ ์ ๋ถํฉํ๋ ์ ๋ณด์ ํฌ๊ฒ ๊ด๊ณ๊ฐ ์๋ค๋ ๋ป์ผ๋ก ์ดํดํ๋ ๊ฒ ๋ ์ ํํ ๊ฒ ๊ฐ๋ค. ๊ฐ๋ น non-semantic tag ์ค ์ผ๋ถ์ธ div
๋ span
๊ฐ์ tag๋ code๋ง ๋ณด๊ณ ์๋ ๊ทธ ์์ฒด๋ก ์ด๋ค ์ญํ ์ ๊ฐ์ง๋์ง ์ ์๋ ์์ง๋ง design ์์ญ์์ ๊ตฌ๋ถ์ด ํ์ํ ๋ ์ฌ์ฉํ๊ธฐ๋ ํ๋ค. ํ์ง๋ง ์ด๋ฌํ ํ์๋ก ๋ถ์ฌ๋ tag๋ ๊ณ ๊ฐ์๊ฒ ์ ๋ฌํ๋ ค๋ ์ ๋ณด์ธ ๋ด์ฉ๊ณผ๋ ์๊ด์ด ์์ ์ ์๋ค. ๊ทธ์ ๋น์ทํ ๋ถ๋ถ๋ผ๋ฆฌ ๋ฌถ์ด์ฃผ๊ณ , design์ ๋ง๊ฒ layout์ ๋ถ๋ฆฌํด์ฃผ๊ณ , ๊ฐ class
๋ id
๋ผ๋ attribute๋ฅผ ๋ถ์ฌํ์ฌ CSS style์ ์
ํ์ค ์ ์๋ ๊ฒ์ด๋ค. ํนํ div
tag๋ CSS์์ ์ ๋ณด ๋ฐฐ์น ๋จ์๋ฅผ ์ ์ํ๊ธฐ ์ํด ๋๋ฆฌ ์ฌ์ฉ๋๋ฉฐ div
tag๋ฅผ ํตํด ์์๋ฅผ ํ๋์ ๋
ผ๋ฆฌ์ ์ธ group์ผ๋ก ๋ฌถ๊ฑฐ๋, page์ ๊ตฌํ์ ์ ์ํ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ๋๋ค.
semantic tag์ header
, nav
, section
, article
, aside
,footer
๋ฑ์ด ์๋๋ฐ ๊ฐ tag๋ง๋ค ์ญํ ์ด ์์ผ๋ฏ๋ก ํด๋น tag์ ํ์์ ๊ธฐ์ฌ๋๋ ๋ด์ฉ์ tag๋ณ๋ก groupingํ ์ ์๋ค. ์๋ฅผ ๋ค์ด, ๋์ผํ ๊ธ์๊ฐ ์์ด๋ ๊ทธ ๊ธ์๊ฐ section tag์ ์๋ ๊ธ์์ธ์ง, aside tag์ ์๋ ๊ธ์์ธ์ง ๊ตฌ๋ถํด ๋ณ๋๋ก ์ทจ๊ธํ ์ ์๋ค. ์ด๋ ๋ฏ ์ ๋ณด๊ฐ ์ ์ ํ๊ฒ ๊ตฌ๋ถ๋์ด์ผ ํ๋ ์ด์ ๋ ์์์ ์ธ๊ธํ ์น ์ฌ์ดํธ ์ ์ ์ ํ์์ ์ผ๋ก ๊ณ ๋ คํด์ผ ํ๋ ์์๋ค ๋๋ฌธ์ด๋ค. (๋ณต์ต go โ)
์ด ์์๋ฅผ ๊ณ ๋ คํ์ฌ ๊ตฌํ๋ web site๊ฐ ๋ฐ๋ก semantic tag๋ก ์ง์ฌ์ง semantic web์ด๋ผ ํ ์ ์๋ค. ๊ฐ ์์๋ฅผ ํ์ด์ ์ค๋ช ํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.
๋ด๊ฐ ๋ง๋๋ web site๊ฐ semantic web์ด์ด์ผ ํ๋ ์ด์ ๋ ๋ด๊ฐ ์ ๋ฌํ๊ณ ์ถ์ด ํ๋ ์ ๋ณด๋ฅผ ๊ฐ๋ฅํ ํ ์ ํํ๊ฒ ์ ๋ฌํ๊ธฐ ์ํด, ํํฐ๋ง์ด๋ ๊ฒ์ ๋ฑ์ ํตํด ๋ด๊ฐ ๋ชฉํํ ๋ฐ๋ฅผ ์ด๋ฃจ๋ ๋ฐฉ๋ฒ๋ก ์ ํ์ฅํ๊ธฐ ์ํด, ์ค๋ ๊ธฐ๊ฐ ํธํ๊ฒ ๊ด๋ฆฌํ๊ธฐ ์ํด'์ธ ๊ฒ ๊ฐ๋ค. ์ฆ, ์ ๋ณด ์ ๊ณต์๊ฐ ์ธ์ด ๋ชฉํ๋ฅผ ๋ฌ์ฑํ๊ธฐ ์ํด ์ด ์ ๋ณด๋ฅผ ์ฝ๋ ๊ธฐ๊ณ(ํ๋ก๊ทธ๋จ)๊ฐ ๋ ํจ์จ์ ์ผ๋ก ์ ๋ณด๋ฅผ ํด์ํ ์ ์๋๋ก ์ผ์ข ์ template์ ๋ง๋ จํ ๊ฒ semantic tag์ธ ๊ฒ ๊ฐ๋ค. ๊ทธ๋ฌ๋ semantic tag์ non-semantic tag๋ฅผ ์ ํ์ฉํด์ semantic web์ ๋ง๋ค์ด์ผ์ง!
-์๋-
์ง๋ฌธ์ผ๋ก ๋์๊ฐ์
Q. "์ด๋ป๊ฒ site์ ์ด๋ฏธ์ง๋ฅผ ๋ฃ์ ๊ฑด์ง?" ํ๊ณ ๋ฌผ์ผ์ ๋ค๋ฉด
A. "๊ทธ image์ ๋ํ ๋ด์ฉ์ด ๋
์์๊ฒ ํ์ํ ์ ๋ณด์
๋๊น?"๋ผ๊ณ ๋๋ฌผ์ด์ผ๊ฒ ๋ค. ๋ง์ผ๋ฉด HTML file์์ img
ํ๊ทธ์ alt
๋ฅผ ์ฐฉ์คํ๊ฒ ์ ์ด์ผ ํ ๊ฒ์ด๊ณ , ์๋๋ผ๋ฉด CSS file์์ background-image
์์ฑ์ ์จ์ผ์ง. ์๋ํ๋ฉด ์ด๋ ๊ฒ ํ๋ฉด load ์๋๊ฐ ๋ ๋น ๋ฅด๋๊น. ํนํ๋ ๋จ์ํ ์ฌ๋ฏธ์ ๋ชฉ์ ์ผ๋ก ์ฝ์
ํ๋ ๋ฐฐ๊ฒฝ image์ด๋ฉด ๋์ฒด์ด(alt
)๊ฐ ํ์ ์์ ๊ฒ ๊ฐ์ผ๋ CSS file์๋ง ์
๋ ฅํ๋ ๊ฒ์ผ๋ก ๊ฒฐ์ ํ ๊ฒ ๊ฐ๋ค.
background-image
์ ๋ํด ์ผ๋ถ๋ถ๋ง ์๊ณ ์์ฒ๋ผ ์ ์๋๋ฐ, image sprite๋ฅผ ์ฌ์ฉํ ๋์๋ background-image
๋ฅผ ์ฌ์ฉํ๋ค๋ ๊ฒ์ ์๊ฒ ๋์๋ค. (๋ค์ ์ ์ velog link)
MDN - Document and website structure
MDN - Semantics
W3schools - HTML Semantic Elements
์ฌ๊ธฐ์ ๊ธฐ์ ์๋ ์ ๋ณด๋ฅผ ๊ธ์ด๋ชจ์ ๋ด ์ธ์ด๋ก ํ์ด ์.
๋ค๋ง, ๊ทธ๋ฆผ์ ์ถ์ฒ๋ฅผ ๋์ณค๋๋ฐ ๋์ค์ ์๊ฒ ๋๋ค๋ฉด ์ฎ๊ฒจ ์ ์ ๊ฒ.