Front End/HTML, CSS

μ›Ή ν‘œμ€€

🌐

μ›Ή(Web)

웹이라 ν•˜λ©΄ 인터넷 κ·Έ 자체λ₯Ό λ– μ˜¬λ¦¬λŠ” μ‚¬λžŒλ“€μ΄ λ§Žκ² μ§€λ§Œ, 사싀은 인터넷이 웹보닀 쑰금 더 포괄적인 κ°œλ…μ΄λ‹€. 인터넷은 μ „ μ„Έκ³„μ μœΌλ‘œ μ—°κ²°λœ 컴퓨터 λ„€νŠΈμ›Œν¬ 톡신망을 μ˜λ―Έν•˜λ©°, 웹은 λ¬Έμ„œ, 이미지, μ˜μƒ λ“± λ‹€μ–‘ν•œ 정보λ₯Ό μ—¬λŸ¬ μ‚¬λžŒκ³Ό κ³΅μœ ν•  수 μžˆλŠ” μΌμ’…μ˜ κ³΅κ°„μ΄μž ν”Œλž«νΌμ΄λ‹€.

μ›Ή ν‘œμ€€

μ›Ή ν‘œμ€€μ΄λž€ W3C(World Wide Web Consortium)μ—μ„œ κΆŒκ³ ν•˜λŠ” β€˜μ›Ήμ—μ„œ ν‘œμ€€μ μœΌλ‘œ μ‚¬μš©λ˜λŠ” κΈ°μˆ μ΄λ‚˜ κ·œμΉ™β€™μœΌλ‘œ, μ‚¬μš©μžκ°€ μ–΄λ– ν•œ μš΄μ˜μ²΄μ œλ‚˜ λΈŒλΌμš°μ €λ₯Ό μ‚¬μš©ν•˜λ”λΌλ„ μ›Ή νŽ˜μ΄μ§€κ°€ λ™μΌν•˜κ²Œ 보이고 μ •μƒμ μœΌλ‘œ μž‘λ™ν•  수 μžˆλ„λ‘ ν•˜λŠ” μ›Ή νŽ˜μ΄μ§€ μ œμž‘ 기법을 λ‹΄κ³  μžˆλ‹€. μ›Ή κ°œλ°œμ—μ„œ μ‚¬μš©λ˜λŠ” 언어인 HTML, CSS, JavaScript λ“±μ˜ κΈ°μˆ μ„ 닀루며 이듀은 각각 ν™”λ©΄μ˜ ꡬ쑰, ν‘œν˜„, λ™μž‘μ„ λ‹΄λ‹Ήν•œλ‹€.

크둬, 엣지, μ‚¬νŒŒλ¦¬, 였페라, νŒŒμ΄μ–΄ν­μŠ€ λ“± μ΅œμ‹  μ›Ή λΈŒλΌμš°μ €λ“€μ€ λͺ¨λ‘ μ›Ή ν‘œμ€€μ„ μ§€μ›ν•œλ‹€. λ”°λΌμ„œ μ›Ή ν‘œμ€€μ— λ§žμΆ”μ–΄ μ›ΉνŽ˜μ΄μ§€λ₯Ό μž‘μ„±ν•˜λ©΄ μ–΄λ–€ λΈŒλΌμš°μ €λ₯Ό μ‚¬μš©ν•˜λ“  λ™μΌν•œ 결과물을 얻을 수 있고, λΈŒλΌμš°μ € ν˜Έν™˜ λ•Œλ¬Έμ— 화면이 μ œλŒ€λ‘œ ν‘œμ‹œλ˜μ§€ μ•Šκ±°λ‚˜ κΈ°λŠ₯이 μž‘λ™λ˜μ§€ μ•ŠλŠ” 문제 상황을 방지할 수 μžˆλŠ” 것이닀.

μ›Ή ν‘œμ€€μ˜ μž₯점

  1. μœ μ§€ 보수의 μš©μ΄μ„±

    μ›Ή ν‘œμ€€μœΌλ‘œ HTML, CSS, JavaScript λ“±μ˜ μ‚¬μš© 방법을 μ •λ¦¬ν•˜κΈ° μ΄μ „μ—λŠ” ꡬ쑰, ν‘œν˜„, λ™μž‘μ΄ λ’€μ„žμΈ μ½”λ“œ, 즉 관심사 뢄리가 μ•ˆλœ μ½”λ“œλ„ λ§Žμ•˜κΈ° λ•Œλ¬Έμ— μ–΄λŠ ν•œ 뢀뢄을 μˆ˜μ •ν•˜κΈ° μœ„ν•΄ μ „λΆ€ λœ―μ–΄κ³ μ³μ•Ό ν•˜λŠ” κ²½μš°κ°€ μžˆμ—ˆλ‹€. ν•˜μ§€λ§Œ 각 μ˜μ—­μ΄ λΆ„λ¦¬λ˜λ©° μœ μ§€ λ³΄μˆ˜κ°€ μš©μ΄ν•΄μ‘Œκ³  μ½”λ“œκ°€ κ²½λŸ‰ν™”λ˜λ©° νŠΈλž˜ν”½ λΉ„μš© μ—­μ‹œ κ°μ†Œν•˜λŠ” νš¨κ³Όκ°€ μžˆλ‹€.

  1. μ›Ή ν˜Έν™˜μ„± 확보

    κ³Όκ±° IE의 ActiveX ν™˜κ²½μ²˜λŸΌ μ›Ή μ‚¬μ΄νŠΈκ°€ νŠΉμ • μš΄μ˜μ²΄μ œλ‚˜ λΈŒλΌμš°μ €μ— 쒅속적이라면 κ·Έ μ™Έ ν™˜κ²½μ—μ„œλŠ” μ •μƒμ μœΌλ‘œ μ‚¬μš©μ΄ λΆˆκ°€λŠ₯ν–ˆλ‹€. μ›Ή ν‘œμ€€μ„ μ€€μˆ˜ν•˜μ—¬ μ›Ή μ‚¬μ΄νŠΈλ₯Ό μ œμž‘ν•˜λ©΄ μ›Ή λΈŒλΌμš°μ €μ˜ μ’…λ₯˜λ‚˜ 버전, 운영 μ²΄μ œλ‚˜ λ””λ°”μ΄μŠ€μ— 상관 없이 λ™μΌν•œ 컨텐츠λ₯Ό μ œκ³΅ν•  수 μžˆλ‹€.

  1. 검색 νš¨μœ¨μ„± μ¦λŒ€

    μ μ ˆν•œ HTML μš”μ†Œ(μ‹œλ©˜ν‹± νƒœκ·Έ λ“±)의 μ‚¬μš©, μ›Ή νŽ˜μ΄μ§€μ— λŒ€ν•œ μ •ν™•ν•œ 정보 μž‘μ„± λ“± 검색 νš¨μœ¨μ„±κ³Ό κ΄€λ ¨λœ λ‚΄μš©μ„ μ›Ή ν‘œμ€€μ—μ„œ 닀루고 μžˆμ–΄ κ²€μƒ‰μ˜ νš¨μœ¨μ„±μ„ 높이고 검색 μ—”μ§„μ—μ„œμ˜ μƒμœ„ λ…ΈμΆœμ— μœ λ¦¬ν•œ νš¨κ³Όκ°€ μžˆλ‹€.

  1. μ›Ή μ ‘κ·Όμ„± ν–₯상

    μ›Ή νŽ˜μ΄μ§€λŠ” λ‹¨μˆœνžˆ λΈŒλΌμš°μ €, 운영체체, λ””λ°”μ΄μŠ€λ§Œ κ³ λ €ν•  것이 μ•„λ‹ˆλΌ μ‹€μ§ˆμ μœΌλ‘œ 웹에 μ ‘κ·Όν•˜λŠ” 주체인 μ‚¬μš©μž μ—­μ‹œ κ³ λ €ν•΄μ•Ό ν•œλ‹€. μ›Ή ν‘œμ€€μ€ λ‹€μ–‘ν•œ μ‚¬μš©μžλ₯Ό κ³ λ €ν•˜λŠ” λ‚΄μš©λ„ ν¬ν•¨ν•˜κ³  있기 λ•Œλ¬Έμ— μ›Ή ν‘œμ€€μ— 맞좰 κ°œλ°œν•˜λ©΄ μ ‘κ·Όμ„± λ¬Έμ œλ„ λ§Žμ€ 뢀뢄을 ν•΄κ²°ν•  수 μžˆλ‹€.

Semantic HTML

μ›Ή ν‘œμ€€μ—μ„œλŠ” HTML을 μ‹œλ§¨ν‹±(semantic), 즉 의미 있게 μž‘μ„±ν•˜λŠ” 것이 μ€‘μš”ν•˜λ‹€. HTML이 ꡬ쑰라면, λ‹¨μˆœνžˆ ꡬ쑰λ₯Ό λ„˜μ–΄ 의미λ₯Ό κ°–μΆ˜ ꡬ쑰λ₯Ό λ§Œλ“€μ–΄μ•Ό ν•œλ‹€λŠ” λœ»μ΄λ‹€.

λ‹¨μˆœνžˆ μ˜μ—­μœΌλ‘œ κ΅¬μ‘°ν™”ν•œ HTML
각 μ˜μ—­μ˜ 의미λ₯Ό λ‚΄ν¬ν•œ HTML

μ‹œλ§¨ν‹± μš”μ†Œλ₯Ό μ‚¬μš©ν•˜κ²Œ 되면 각 μš”μ†Œμ˜ μ΄λ¦„λ§Œ 보고도 ν™”λ©΄μ—μ„œ μ–΄λ–€ 역할을 ν•˜κ³  μ–΄λ–€ λ‚΄μš©μ„ λ‹΄κ²Œ 될지 λͺ…ν™•ν•˜κ²Œ ꡬ뢄할 수 있게 λœλ‹€. 이처럼 μš”μ†Œκ°€ μ–΄λ–€ λ‚΄μš©μ„ λ‹΄κ²Œ 될지 μ–΄λ–€ κΈ°λŠ₯을 ν•˜κ²Œ 될지 ν™•μ‹€ν•˜κ²Œ 의미λ₯Ό κ°€μ§€κ³ μžˆλŠ” μš”μ†Œλ₯Ό μ‹œλ§¨ν‹± μš”μ†ŒλΌ ν•˜κ³  이λ₯Ό 적절히 μ‚¬μš©ν•΄ κ΅¬μ„±ν•œ HTML을 μ‹œλ§¨ν‹± HTML이라 μΌμ»«λŠ”λ‹€.

μ‹œλ§¨ν‹± HTML의 ν•„μš”μ„±

  1. κ°œλ°œμžκ°„ μ†Œν†΅

    μ‹œλ§¨ν‹± μš”μ†Œλ₯Ό μ‚¬μš©ν•˜λ©΄ 각 μš”μ†Œμ˜ μ—­ν• κ³Ό λ‚΄μš©μ΄ 이미 μ •ν•΄μ Έ 있기 λ•Œλ¬Έμ—, 일일이 μ˜μ—­μ˜ idλ‚˜ classλ₯Ό μ •μ˜ν•˜κ±°λ‚˜ 사전에 ν˜‘μ˜ ν•  ν•„μš”μ—†μ΄ μ›ν• ν•œ μ†Œν†΅μ΄ κ°€λŠ₯ν•˜λ‹€.

  1. 검색 νš¨μœ¨μ„±

    검색 엔진은 HTML μ½”λ“œλ₯Ό 보고 λ¬Έμ„œμ˜ ꡬ쑰λ₯Ό νŒŒμ•…ν•˜κΈ° λ•Œλ¬Έμ— μ‹œλ§¨ν‹± μš”μ†Œλ₯Ό μ‚¬μš©ν•˜κ²Œ 되면 μ–΄λ–€ μš”μ†Œμ— 더 μ€‘μš”ν•œ λ‚΄μš©μ΄ λ“€μ–΄μžˆμ„μ§€ μš°μ„  μˆœμœ„λ₯Ό μ •ν•  수 있고, μš°μ„  μˆœμœ„κ°€ λ†’λ‹€κ³  νŒŒμ•…λœ νŽ˜μ΄μ§€λ₯Ό 검색 κ²°κ³Ό 상단에 ν‘œμ‹œν•˜κ²Œ λœλ‹€.

  1. μ›Ή μ ‘κ·Όμ„±

    μ›Ή 접근성은 λ‚˜μ΄, 성별, μž₯μ•  μ—¬λΆ€, μ‚¬μš© ν™˜κ²½μ„ λ– λ‚˜ 항상 λ™μΌν•œ μˆ˜μ€€μ˜ 컨텐츠λ₯Ό μ œκ³΅ν•  수 μžˆμ–΄μ•Ό 함을 λœ»ν•œλ‹€. 일반적으둜 웹을 μ‚¬μš©ν•˜λŠ” 상황이 μ•„λ‹ˆλΌλ©΄(슀크린 리더 λ“±) 이런 μ‹œλ§¨ν‹± μš”μ†Œκ°€ 각각 μ–΄λ–€ 역할인지 ν™”λ©΄ ꡬ쑰에 λŒ€ν•œ μ •λ³΄κΉŒμ§€ 전달할 수 μžˆμ–΄ 컨텐츠λ₯Ό 더 μ •ν™•ν•˜κ²Œ 전달할 수 있게 λœλ‹€.

자주 μ“°μ΄λŠ” μ‹œλ§¨ν‹± μš”μ†Œ

μš”μ†Œ μ’…λ₯˜μ„€λͺ…
<header>νŽ˜μ΄μ§€λ‚˜ μš”μ†Œμ˜ μ΅œμƒλ‹¨μ— μœ„μΉ˜ν•˜λŠ” 머릿말 μ—­ν• μ˜ μš”μ†Œ
<nav>메뉴, λͺ©μ°¨ 등에 μ‚¬μš©λ˜λŠ” μš”μ†Œ
<aside>λ¬Έμ„œμ™€ 연관은 μžˆμ§€λ§Œ, 직접적인 연관은 μ—†λŠ” λ‚΄μš©μ„ λ‹΄λŠ” μš”μ†Œ
<main>이름 κ·ΈλŒ€λ‘œ λ¬Έμ„œμ˜ 메인이 λ˜λŠ” μ£Όμš” μ½˜ν…μΈ λ₯Ό λ‹΄λŠ” μš”μ†Œ
<article>κ²Œμ‹œκΈ€, λ‰΄μŠ€ 기사 λ“± λ…λ¦½μ μœΌλ‘œ ꡬ뢄해 μž¬μ‚¬μš©ν•  수 μžˆλŠ” 뢀뢄을 μ˜λ―Έν•˜λŠ” μš”μ†Œ. 각각의 <article>을 κ΅¬λΆ„ν•˜κΈ° μœ„ν•œ μˆ˜λ‹¨μ΄ ν•„μš”ν•˜λ©°, 보톡 제λͺ©(<hgroup>)을 ν¬ν•¨ν•˜λŠ” 방법을 μ‚¬μš©ν•œλ‹€.
<section>λ¬Έμ„œμ˜ 독립적인 κ΅¬νšμ„ λ‚˜νƒ€λ‚΄λ©°, λ”±νžˆ μ ν•©ν•œ 의미의 μš”μ†Œκ°€ 없을 λ•Œ μ‚¬μš©ν•œλ‹€. 제λͺ©(<hgroup>)을 ν¬ν•¨ν•˜λŠ” κ²½μš°κ°€ λ§Žλ‹€.
<hgroup>제λͺ©μ„ ν‘œμ‹œν•  λ•Œ μ‚¬μš©ν•˜λŠ” μš”μ†Œλ‘œ, <h1> ~ <h6> μš”μ†Œκ°€ <hgroup>이닀.
<footer>νŽ˜μ΄μ§€λ‚˜ μš”μ†Œμ˜ μ΅œν•˜λ‹¨μ— μœ„μΉ˜ν•˜λŠ” 꼬릿말 μ—­ν• μ˜ μš”μ†Œ

<header>

  • 일반적으둜 νŽ˜μ΄μ§€ μ΅œμƒλ‹¨μ— μœ„μΉ˜ν•˜λŠ” κ²½μš°κ°€ 많으며, 이 경우 μ‚¬μ΄νŠΈ μ „μ²΄μ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” λ‚΄μš©μ„ λ‹΄λŠ”λ‹€. 둜고, μ‚¬μ΄νŠΈ 이름, μ‚¬μ΄νŠΈ 전체 메뉴(<nav>), 검색 폼 λ“±μ˜ 컨텐츠가 λ“€μ–΄κ°ˆ 수 μžˆλ‹€.
  • κΌ­ μ‚¬μ΄νŠΈ 전체가 μ•„λ‹ˆλ”λΌλ„ <article>, <main> λ“± λ‹€λ₯Έ μš”μ†Œμ˜ 머릿말 μ—­ν• λ‘œλ„ μ‚¬μš©ν•  수 μžˆλ‹€.

<nav>

  • λ„€λΉ„κ²Œμ΄μ…˜ λ°”μ˜ μ—­ν• λ‘œ, μ‚¬μ΄νŠΈ 내에 μ΄μš©ν•  수 μžˆλŠ” 링크듀을 λ‹΄λŠ”λ‹€.
  • <header>에 GNBκ°€ μœ„μΉ˜ν•˜λŠ” 것이 μΌλ°˜μ μ΄λ‚˜, ν•„μš”μ— 따라 μ‚¬μ΄νŠΈ μ „λ°˜μ— λ‹€μ–‘ν•˜κ²Œ μœ„μΉ˜ν•  수 μžˆλ‹€.

<aside>

  • 메인 컨텐츠와 관련이 있긴 ν•˜μ§€λ§Œ 직접적인 연관은 μ—†λŠ” λ‚΄μš©μ΄ λ“€μ–΄κ°„λ‹€. μ»¨ν…μΈ μ˜ λͺ©μ°¨μ— λ”°λ₯Έ 뢁마크(λ°”λ‘œκ°€κΈ°)λ‚˜, μœ„μ ―, 광고등이 λ“€μ–΄κ°€λŠ” 것이 μΌλ°˜μ μ΄λ‹€.

<main>

  • νŽ˜μ΄μ§€μ˜ 메인 컨텐츠가 λ“€μ–΄κ°€λŠ” μš”μ†Œμ΄λ©°, ν•΄λ‹Ή νŽ˜μ΄μ§€μ˜ μ£Όμ œμ™€ κ΄€λ ¨ν•œ λ‚΄μš©μ„ ν¬κ΄„μ μœΌλ‘œ ν¬ν•¨ν•˜λŠ” μΌμ’…μ˜ μ»¨ν…Œμ΄λ„ˆ 역할을 λ§‘λŠ”λ‹€.

<article>

  • κ²Œμ‹œκΈ€, λ‰΄μŠ€ 기사 처럼 λ…λ¦½μ μœΌλ‘œ ꡬ뢄해 μž¬μ‚¬μš©ν•  수 μžˆλŠ” 뢀뢄을 μ˜λ―Έν•˜λ©°, μž¬μ‚¬μš©ν•˜λŠ” 뢀뢄인 만큼 각각의 <article>을 식별할 수 μžˆλ„λ‘ 제λͺ©(<hgroup>) κ³Ό 같은 μš”μ†Œλ₯Ό 포함해야 ν•œλ‹€.

<section>

  • λ¬Έμ„œμ˜ 독립적인 κ΅¬νšμ„ λ‚˜νƒ€λ‚΄μ§€λ§Œ λ”±νžˆ μ ν•©ν•œ 의미의 μ‹œλ§¨ν‹± μš”μ†Œκ°€ 없을 λ•Œ μ‚¬μš©ν•œλ‹€. μ ν•©ν•œ 의미의 μš”μ†Œκ°€ 없을 λ•Œ μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— 의미 λΆ€μ—¬λ₯Ό μœ„ν•œ 제λͺ©(<hgroup>)κ³Ό 같은 μš”μ†Œλ₯Ό 포함해야 ν•œλ‹€.

<hgroup>

  • 제λͺ©μ„ ν‘œμ‹œν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•˜λ©°, <h1> λΆ€ν„° <h6> κΉŒμ§€ μžˆλ‹€.
  • μˆ«μžκ°€ 클 수둝 κΈ€μžμ˜ ν¬κΈ°λŠ” μž‘μ•„μ§€λ©°, μˆ«μžκ°€ μž‘μ€ 제λͺ©μ΄ μˆ«μžκ°€ 큰 제λͺ©μ„ ν¬ν•¨ν•˜λŠ” λ°©μ‹μœΌλ‘œ μ‚¬μš©ν•΄ 각 ꡬ역과 λ‚΄μš©μ˜ 상관 관계와 포함관계λ₯Ό ν•¨κ»˜ ν‘œν˜„ν•  수 μžˆλ‹€.

    β†’ ex. <h1>인 전체 λ‚΄μš©(<article>) μ•ˆμ— <h2>인 ν•­λͺ©(<section>)이 μžˆλŠ” ν˜•νƒœ

<footer>

  • νŽ˜μ΄μ§€λ‚˜ μš”μ†Œ μ΅œν•˜λ‹¨μ— μœ„μΉ˜ν•˜λŠ” 꼬릿말 역할을 ν•˜λŠ” μš”μ†Œμ΄λ©°, μ‚¬μ΄νŠΈ 제곡자, μ €μž‘κΆŒ, μ •μ±…, μ‚¬μ΄νŠΈλ§΅ λ“±μ˜ λ‚΄μš©μ„ ν¬ν•¨ν•œλ‹€.

μ›Ή ν‘œμ€€μ„ μœ„ν•œ λ§ˆν¬μ—… μ‹œ μ£Όμ˜μ‚¬ν•­

  1. 인라인 μš”μ†Œ μ•ˆμ— 블둝 μš”μ†ŒλŠ” 넣지 μ•ŠλŠ”λ‹€

    인라인 μš”μ†ŒλŠ” 항상 블둝 μš”μ†Œ μ•ˆμ— λ“€μ–΄κ°€μ•Ό ν•˜λ©°, λ°˜λŒ€μ˜ κ²½μš°λŠ” μžˆμ–΄μ„  μ•ˆλœλ‹€.

  1. <b>, <i> λŒ€μ‹  <strong>, <em>

    <b>와 <i>λŠ” 각각 글씨λ₯Ό ꡡ게 λ§Œλ“€ λ•Œ, 글씨λ₯Ό 기울일 λ•Œ μ‚¬μš©ν•˜λŠ” μš”μ†Œμ΄μ§€λ§Œ μ‹œλ§¨ν‹±ν•˜μ§€ μ•Šμ€, ν‘œν˜„μ„ κΈ°μ€€μœΌλ‘œ 이름이 지어진 μš”μ†Œμ΄κΈ° λ•Œλ¬Έμ— ν‘œν˜„μ€ λ™μΌν•˜λ©΄μ„œλ„ λ‚΄μš©κΉŒμ§€ ν¬ν•¨ν•˜κ³  μžˆλŠ” <strong>, <em>μš”μ†Œλ₯Ό μ‚¬μš©ν•˜λŠ” 것이 μ’‹λ‹€.

  1. <hgroup> 마ꡬ작이둜 μ‚¬μš©ν•˜μ§€ μ•ŠκΈ°

    ν•΄λ‹Ή μš”μ†Œλ₯Ό μ‚¬μš©ν•˜λ©΄ κΈ€μžμ˜ 크기가 컀지닀 λ³΄λ‹ˆ μ˜λ―Έκ°€ μ•„λ‹Œ μŠ€νƒ€μΌμ„ μœ„ν•΄ μ‚¬μš©ν•˜λŠ” κ²½μš°κ°€ μžˆλŠ”λ°, μ—„μ—°νžˆ λ‚΄μš©μ˜ ꡬ쑰적인 의미λ₯Ό 가진 μš”μ†Œμ΄κΈ° λ•Œλ¬Έμ— μŠ€νƒ€μΌλ§Œμ„ λͺ©μ μœΌλ‘œ μ“΄λ‹€λ©΄ μ‚¬μš©μžμ—κ²Œ μ™„μ „νžˆ 잘λͺ»λœ ν™”λ©΄ ꡬ쑰 정보λ₯Ό μ „λ‹¬ν•˜κ²Œ λœλ‹€.

  1. <br /> μ—°μ†μœΌλ‘œ μ‚¬μš©μ€ 금물

    <br />은 μ­‰ μ΄μ–΄μ§€λŠ” ν…μŠ€νŠΈ 흐름에 쀄 λ°”κΏˆμ„ ν•΄μ£ΌκΈ° μœ„ν•΄ μ‚¬μš©ν•˜λŠ” μš”μ†Œμ΄κΈ° λ•Œλ¬Έμ— μš”μ†Œ 사이에 간격을 λ§Œλ“€κΈ° μœ„ν•œ λͺ©μ μœΌλ‘œ λ‚¨λ°œν•΄μ„  μ•ˆλœλ‹€. μš”μ†Œ 사이에 간격이 ν•„μš”ν•˜λ‹€λ©΄ λ³„λ„μ˜ 단락(<p>)으둜 κ΅¬λΆ„ν•˜κ±°λ‚˜, CSS 속성(margin, padding λ“±)을 μ£Όμ–΄ 여백을 μ‘°μ •ν•˜λŠ” 것이 μ’‹λ‹€.

  1. 인라인 μŠ€νƒ€μΌλ§ μ‚¬μš©ν•˜μ§€ μ•ŠκΈ°

    HTML의 μš”μ†Œ 속성(style=””)으둜 μŠ€νƒ€μΌμ„ μ£ΌλŠ” 것은 μ›Ή ν‘œμ€€μ˜ μž₯점 쀑 ν•˜λ‚˜μΈ 관심사 뢄리에 λ§žμ§€ μ•ŠκΈ° λ•Œλ¬Έμ—, CSS νŒŒμΌμ„ 톡해 μŠ€νƒ€μΌμ„ μ£Όμ–΄μ•Ό ν•œλ‹€.

크둜슀 λΈŒλΌμš°μ§•(Cross Browsing)

크둜슀 λΈŒλΌμš°μ§•μ€ μ›Ή μ‚¬μ΄νŠΈμ— μ ‘κ·Όν•˜λŠ” λΈŒλΌμš°μ €μ˜ μ’…λ₯˜μ— 상관 없이 λ™λ“±ν•œ ν™”λ©΄κ³Ό κΈ°λŠ₯을 μ œκ³΅ν•  수 μžˆλ„λ‘ λ§Œλ“œλŠ” μž‘μ—…μ„ μ˜λ―Έν•œλ‹€. μ—¬κΈ°μ„œ β€˜λ™μΌν•œβ€™μ΄ μ•„λ‹ˆλΌ β€˜λ™λ“±ν•œβ€™ μ΄λž€ ν‘œν˜„μ„ μΌλŠ”λ°, μ΄λŠ” 크둜슀 λΈŒλΌμš°μ§•μ΄ λͺ¨λ“  λΈŒλΌμš°μ €μ—μ„œ μ™„μ „νžˆ λ˜‘κ°™μ€ 화면을 λ³΄μ—¬μ£ΌλŠ” 것이 μ•„λ‹ˆλ‹€λŠ” μ˜λ―Έμ΄λ‹€. λΈŒλΌμš°μ €λ§ˆλ‹€ μ‚¬μš©ν•˜λŠ” λ Œλ”λ§ 엔진이 λ‹€λ₯΄κΈ° λ•Œλ¬Έμ— 화면을 μ™„μ „νžˆ λ™μΌν•˜κ²Œ λ§Œλ“œλŠ” 것은 λΆˆκ°€λŠ₯ ν•˜λ©°, λ”°λΌμ„œ 크둜슀 λΈŒλΌμš°μ§•μ˜ λͺ©ν‘œλŠ” β€˜λͺ¨λ“  λΈŒλΌμš°μ €μ—μ„œ λ™λ“±ν•œ μˆ˜μ€€μ˜ 정보와 κΈ°λŠ₯을 μ œκ³΅ν•˜λŠ” 것’이라 ν•  수 μžˆλ‹€.

μ›Ή ν‘œμ€€ μžμ²΄κ°€ μ–΄λ–€ λΈŒλΌμš°μ €λ‚˜ 운영체제λ₯Ό 쓰더라도 μ›Ή νŽ˜μ΄μ§€κ°€ λ™μΌν•˜κ²Œ 보이고 μ •μƒμ μœΌλ‘œ μž‘λ™ν•  수 μžˆλ„λ‘ ν•˜λŠ” μ›Ή νŽ˜μ΄μ§€ μ œμž‘ 기법이기 λ•Œλ¬Έμ— μ›Ή νŽ˜μ΄μ§€ 개발 μ‹œ μ›Ή ν‘œμ€€λ§Œ 잘 μ§€μΌœλ„ 크둜슀 λΈŒλΌμš°μ§•μ„ μ–΄λŠμ •λ„ μ‹€ν˜„ν•  수 μžˆλ‹€. λΈŒλΌμš°μ €μ— 따라 μ œλŒ€λ‘œ ν‘œμ‹œ λ˜μ§€ μ•ŠλŠ” ν™”λ©΄μ΄λ‚˜ λ™μž‘ν•˜μ§€ μ•ŠλŠ” κΈ°λŠ₯이 μžˆμ„ 수 μžˆμŒμ„ μ•Œκ³  κ°œμ„ ν•˜λ €λŠ” νƒœλ„λ§Œ 가져도 μΆ©λΆ„ν•˜λ‹€.

πŸ€”
크둜슀 λΈŒλΌμš°μ§•μ˜ λŒ€ν‘œμ  μ‚¬λ‘€λŠ” 이미 ν‡΄μΆœλœ 인터넷 μ΅μŠ€ν”Œλ‘œλŸ¬(Internet Explorer, IE)λ₯Ό λ“€ 수 μžˆλ‹€. ActiveXλΌλŠ” ν”ŒλŸ¬κ·ΈμΈμ˜ λ‚¨μš©μœΌλ‘œ 인해 ActiveX 기반으둜 μ„œλΉ„μŠ€ν•˜λŠ” μ›Ή νŽ˜μ΄μ§€λŠ” μ΄μ™Έμ˜ λΈŒλΌμš°μ €μ—μ„œ 정상적인 μ‚¬μš©μ΄ λΆˆκ°€λŠ₯ν–ˆκ³ , ActiveXκ°€ μ•„λ‹ˆλ”λΌλ„ μ΅œμ‹  μŠ€νŽ™μ˜ CSS와 JavaScriptλ₯Ό μ œλŒ€λ‘œ μ§€μ›ν•˜μ§€ λͺ»ν•˜λŠ” 문제둜 인해 λ‹€λ₯Έ μ›Ή λΈŒλΌμš°μ €λŠ” μ΅œμ‹  문법을 지원해도 였둯이 IEλ₯Ό μœ„ν•΄ 크둜슀 λΈŒλΌμš°μ§•μ— μ‹œκ°„κ³Ό λΉ„μš©μ„ νˆ¬μžν•΄μ•Ό ν–ˆλ‹€. μ΄λŸ¬ν•œ μ΄μœ λ“€λ‘œ IEλŠ” μ›Ή 개발자 μ‚¬μ΄μ—μ„œ 곡곡의 적으둜 뢈리게 λ˜μ—ˆμ§€λ§Œ, ν˜„μž¬λŠ” μ•žμ„œ λ§ν–ˆλ“― 지원이 μ’…λ£Œλ˜μ—ˆκ³  λŒ€λΆ€λΆ„μ˜ μ‚¬μš©μžλ“€μ˜ IEλ₯Ό 쓰지 μ•Šμ•„ νŠΉμˆ˜ν•œ κ²½μš°κ°€ μ•„λ‹ˆλ©΄ IEλŠ” κ³ λ €ν•˜μ§€ μ•ŠλŠ”λ‹€.
잘 κ°€μ„Έμš” 잘 κ°€μ„Έμš” κ·Έ ν•œ λ§ˆλ””μ˜€μ—ˆλ„€

크둜슀 λΈŒλΌμš°μ§• μ›Œν¬ ν”Œλ‘œμš°

1. 초기 기획

초기 기획 λ‹¨κ³„μ—μ„œλŠ” μ–΄λ–€ μ›Ή μ‚¬μ΄νŠΈλ₯Ό λ§Œλ“€ 것인지 μ •ν™•νžˆ κ²°μ •ν•΄μ•Ό ν•œλ‹€. μ–΄λ–€ 컨텐츠와 κΈ°λŠ₯이 μžˆμ–΄μ•Ό ν•˜λŠ”μ§€, λ””μžμΈμ€ μ–΄λ–»κ²Œ 할지 λ“±μ˜ 사항을 κ²°μ •ν•΄μ•Ό ν•˜λ©° μ΄ν›„μ—λŠ” 이 μ‚¬μ΄νŠΈμ˜ 고객, 즉 νƒ€κ²Ÿ 고객을 κ³ λ €ν•΄ μ–΄λ–€ λΈŒλΌμš°μ €μ™€ κΈ°κΈ°λ₯Ό 주둜 쓸지 κ³ λ―Όν•˜μ—¬ 여기에 λ§žλŠ” κΈ°μˆ μ„ μ‚¬μš©ν•΄ κ°œλ°œν•  수 μžˆλ„λ‘ κΈ°νšν•œλ‹€.

2. 개발

μ½”λ“œλ₯Ό μž‘μ„±ν•  λ•Œ μ‚¬μš©ν•˜λŠ” μ½”λ“œκ°€ 각 λΈŒλΌμš°μ €μ—μ„œ ν˜Έν™˜μ„±μ΄ 어떀지 νŒŒμ•…ν•˜κ³  μ‚¬μš©ν•΄μ•Ό ν•œλ‹€. MDN, Can I Useλ“±μ˜ μ‚¬μ΄νŠΈμ—μ„œ μ½”λ“œμ˜ ν˜Έν™˜μ„±μ„ 확인할 수 μžˆλ‹€. μ•„λž˜ μ˜ˆμ‹œλŠ” MDNμ—μ„œ μ œκ³΅ν•˜λŠ” λΈŒλΌμš°μ € ν˜Έν™˜μ„± 정보이며, IEμ—μ„œμ˜ ν˜Έν™˜μ„±μ΄ μ²˜μ°Έν•œ 것을 λ³Ό 수 μžˆλ‹€. λ§Œμ•½ μ£Ό νƒ€κ²Ÿ 고객의 IE μ‚¬μš© λΉ„μœ¨μ΄ 놓닀면 ν•΄λ‹Ή μ½”λ“œλŠ” μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” 것이 μ’‹λ‹€.

μ½”λ“œλ₯Ό μž‘μ„±ν•˜λ‹€ 보면 크둜슀 λΈŒλΌμš°μ§•μ΄ νž˜λ“  상황을 λ§Œλ‚˜κ²Œ 될 μˆ˜λ„ μžˆλŠ”λ°, 이 경우 이λ₯Ό μΈμ •ν•˜κ³  λŒ€μ²΄ μˆ˜λ‹¨μ„ λ§ˆλ ¨ν•΄μ•Ό ν•œλ‹€. λ˜ν•œ, κ°œλ°œμ€‘μΈ μ›Ή μ‚¬μ΄νŠΈκ°€ 일뢀 였래된 λΈŒλΌμš°μ €μ—μ„œλŠ” μ–΄μ©” 수 없이 μ œλŒ€λ‘œ κΈ°λŠ₯ν•  수 없을 수 μžˆλ‹€λŠ” 사싀을 μ•Œκ³  λ°›μ•„λ“€μ΄λŠ” 것도 μ€‘μš”ν•˜λ‹€.

3. ν…ŒμŠ€νŠΈ / 발견

각 κΈ°λŠ₯을 κ΅¬ν˜„ ν›„ κ·Έ κΈ°λŠ₯에 λŒ€ν•œ ν…ŒμŠ€νŠΈκ°€ ν•„μš”ν•˜λ‹€. 직접 ν…ŒμŠ€νŠΈλ₯Ό μˆ˜ν–‰ν•  μˆ˜λ„ μžˆμ§€λ§Œ, μžλ™μœΌλ‘œ ν…ŒμŠ€νŠΈλ₯Ό μ§„ν–‰ν•΄μ£ΌλŠ” 도ꡬλ₯Ό μ΄μš©ν•  μˆ˜λ„ μžˆλ‹€. TestComplete, LambdaTest, BitBar λ“±μ˜ 크둜슀 λΈŒλΌμš°μ§• ν…ŒμŠ€νŠΈ 툴이 μžˆλ‹€.

  • μ•ˆμ •μ μΈ λ°μŠ€ν¬ν†± λΈŒλΌμš°μ €(크둬, 엣지, νŒŒμ΄μ–΄ν­μŠ€, 였페라, μ‚¬νŒŒλ¦¬ λ“±)μ—μ„œ ν…ŒμŠ€νŠΈ 진행
  • νœ΄λŒ€ν° 및 νƒœλΈ”λ¦Ώ λΈŒλΌμš°μ €(μ‚Όμ„± 인터넷, μ‚¬νŒŒλ¦¬, λͺ¨λ°”일 크둬 λ“±)μ—μ„œ ν…ŒμŠ€νŠΈ 진행
  • 초기 기획 λ‹¨κ³„μ—μ„œ λͺ©ν‘œν–ˆλ˜ λΈŒλΌμš°μ €(IE, μ•± λ‚΄μž₯ λΈŒλΌμš°μ € λ“±)μ—μ„œλ„ ν…ŒμŠ€νŠΈ 진행
  • Window, Linux, Mac λ“± λ‹€μ–‘ν•œ 운영 μ²΄μ œμ—μ„œ ν…ŒμŠ€νŠΈ 진행

4. μˆ˜μ • / 반볡

ν…ŒμŠ€νŠΈ λ‹¨κ³„μ—μ„œ 버그가 λ°œκ²¬λ˜μ—ˆλ‹€λ©΄ μˆ˜μ •μ΄ ν•„μš”ν•˜λ‹€. 버그가 λ°œμƒν•˜λŠ” μœ„μΉ˜λ₯Ό μ΅œλŒ€ν•œ μ’ν˜€μ„œ νŠΉμ •ν•˜κ³ , 버그가 λ°œμƒν•˜λŠ” νŠΉμ • λΈŒλΌμš°μ €μ—μ„œμ˜ ν•΄κ²° 방법을 μ •ν•΄μ•Ό ν•œλ‹€. μ„£λΆˆλ¦¬ μ½”λ“œλ₯Ό μˆ˜μ •ν•˜λ©΄ λ‹€λ₯Έ λΈŒλΌμš°μ €μ—μ„œ 버그가 λ°œμƒν•  수 μžˆμœΌλ―€λ‘œ, 쑰건문을 μž‘μ„±ν•΄ λ‹€λ₯Έ μ½”λ“œλ₯Ό μ‹€ν–‰ν•˜κ²Œ ν•˜λŠ” λ°©μ‹μœΌλ‘œ κ³ μΉ˜λŠ” 것이 μ’‹λ‹€. μˆ˜μ •μ΄ μ™„λ£Œλ˜λ©΄ 3번 κ³Όμ •λΆ€ν„° λ°˜λ³΅ν•œλ‹€.

🌐SEO

πŸŒμ›Ή μ ‘κ·Όμ„±


Uploaded by N2T