μ΄κ²μ κ² μ 보λ₯Ό μ°Ύλ€ λ³΄λ©΄ "μΉ νμ€"μ΄λΌλ μ©μ΄κ° μμ£Ό λ±μ₯νλλ°, νμ κ·Έ μλ―Έλ₯Ό μλ²½ν μ΄ν΄νμ§λ λͺ»νκ³ λμ΄κ°μλ€. κ°κ° μ μ μκ°μ΄ μ‘°κΈ λ¨μ μ§κΈ, “μΉ νμ€”μ λν΄μ 곡λΆνκ³ μ 리ν΄λ³΄μλ€!π
πμΉνμ€μ΄λ?
μΉ νμ€(Web Standard)λ W3Cμμ μ¬μ©λλ κΈ°μ κ³Ό νλ‘ν μ½μ λν κ·μΉκ³Ό κΆκ³ μμ λͺ¨μμ λ§νλ€. μΉ νμ€μ μΉ νμ΄μ§μ μΉ μ ν리μΌμ΄μ μ κ°λ°νκ³ κ΅¬ννλλ° μΌκ΄μ±μ μ 곡νλ©°, λ€μν μΉ λΈλΌμ°μ μ μ₯μΉμμ λμΌν λ°©μμΌλ‘ μλνλλ‘ λ³΄μ₯νλ μν μ νλ€. μ¦, μΉ νμ€μ λ°λΌ κ°λ°λ μΉ μ¬μ΄νΈλ μ μν μ¬μ©μκ° μ΄λ ν μ΄μ체μ λ λΈλΌμ°μ λ₯Ό μ¬μ©νλλΌκ³ μΉ νμ΄μ§κ° λμΌνκ² λ³΄μ΄κ³ μ μμ μΌλ‘ μλν΄μΌ ν¨μ μλ―Ένλ€. λ°λΌμ μΉ νμ€μ μ€μλ μΉ μ κ·Όμ± μ€μλ₯Ό μν ν΅μ¬μ΄λ€.
*μΉ νμ€ κ°μ΄λλΌμΈ: https://www.w3.org/standards/
μΉ μ κ·Όμ±
W3Cμ μ μμ λ°λ₯΄λ©΄ μΉ νμ€μ μ κ·Όμ±, μ¬μν 보νΈ, 보μ, κ΅μ νμ μΈ‘λ©΄μμ κ³ λ €ν΄μΌ νλ€. νΉν μ΄μ€μ μ κ·Όμ±μ νν “μΉ μ κ·Όμ±”μ΄λΌκ³ νλ€.
μΉ μ κ·Όμ±μ μ 체μ μ°¨μ΄λ μ₯μ μ¬λΆμ μκ΄μμ΄ λꡬλ μννκ² μΉ νμ΄μ§λ₯Ό μ΄μ©ν μ μμ΄μΌ νλ€λ κ²μ μλ―Ένλ€. μλ₯Ό λ€μ΄, λμΌλ‘ νλ©΄μ λ³Ό μ μλ μκ°μ₯μ μΈμ κ²½μ° μ€ν¬λ¦° 리λλΌλ λ³λμ μννΈμ¨μ΄λ₯Ό μ»΄ν¨ν°μ μ€μΉνμ¬ μμ±μΌλ‘ μΉ νμ΄μ§μ λ΄κΈ΄ μ 보λ₯Ό μ΄ν΄νλ€. μ΄λ, λ©λ΄λΌλ ν μ€νΈ λμ λ©λ΄λΌκ³ κ·Έλ €μ§ μ΄λ―Έμ§λ₯Ό μ¬μ©ν κ²½μ° λΉμκ°μ₯μ μΈμ λμλ λ©λ΄λΌκ³ μΈμκ°λ₯νμ§λ§ μννΈμ¨μ΄μ μ μ₯μμλ κ·Έμ μ΄λ―Έμ§μΌ λΏμ΄κΈ° λλ¬Έμ κ·Έ μ΄λ―Έμ§ μμ λ΄μ©μ μκ° μ₯μ λ₯Ό κ°μ§ μ¬λμκ² μ λ¬μ΄ λΆκ°λ₯νλ€. λ°λΌμ λλλ‘μ΄λ©΄ μ΄λ―Έμ§ λμ μμ€μ½λμ λ΄μ©μ κ·Έλλ‘ λ΄λ κ²μ΄ κΆμ₯λλ©°, λΆλμ΄νκ² μ΄λ―Έμ§λ₯Ό μ¬μ©ν κ²½μ° μ΄λ―Έμ§κ° μ΄λ€ λ΄μ©μΈμ§ μλμ κ°μ΄ μ€λͺ μ μΆκ°ν΄μΌ νλ€.
<button>
<img src="/images/button__menu.jpg" alt="λ©λ΄ λ²νΌ" />
</button>
πμΉ νμ€μ μ€μνλ λ°©λ²
μΉ νμ€ κ΄λ ¨ κΈ°μ λ‘λ ꡬ쑰-(X)HTML, νν-CSS, λμ-JavaScript λ±μ΄ μλ€.
1. DOCTYPE μ μΈ
μΉ νμ΄μ§μ μ΅μλ¨μ DOCTYPEλ₯Ό μ μΈνμ¬ μΉ νμ΄μ§κ° μ΄λ€ λ²μ μ HTML, XHTMLμ μ¬μ©νμ§λμ§ λͺ μνλ€.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>HTML !DOCTYPE declaration</title>
</head>
<body>
<p>μ΄ λ¬Έμλ HTML λ¬Έμμ
λλ€.</p>
</body>
</html>
2. μλ§¨ν± νκ·Έ μ¬μ©
μλ§¨ν± νκ·Έλ HTML5μμ μλ‘ μΆκ°λ νκ·Έλ‘ <header>, <nav>, <section>, <article>, <footer> λ±μ νκ·Έλ₯Ό μ¬μ©νμ¬ μΉ νμ΄μ§μ ꡬ쑰λ₯Ό λμ± λͺ ννκ² ννν μ μλ€.
βοΈ<header>
: νμ΄μ§λ μΌλΆλΆμ λ¨Έλ¦¬λ§ λΆλΆμ μ§μ
: <header>μμ <h1>~<h6>νκ·Έλ₯Ό μ¬μ©νμ¬ μ λͺ©μ ꡬλΆνλ©΄ μλ©ν± λ§ν¬μ μ ν μ μλ€.
: μΉ μ¬μ΄νΈμ μ£Όμ μ λͺ©μ <h1> νκ·Έλ‘ μμ±νκ³ , κ·Έ μλμ μΉμ μ λͺ©μ <h2> λ±μ νκ·Έλ₯Ό μ¬μ©νλ€.
βοΈ<footer>
: νμ΄μ§λ μΌλΆλΆμ κΌ¬λ¦¬λ§ λΆλΆμ μ§μ
βοΈ<nav>
: νμ΄μ§μ λ€λΉκ²μ΄μ λΆλΆμ μ§μ
: μ¬μ΄νΈμ μ£Όμ νμ λΆλΆμ <nav> μμ λ°°μΉνμ¬ μ¬μ©μκ° μ¬μ΄νΈ ꡬ쑰λ₯Ό μ΄ν΄νκ³ μ½ν μΈ λ‘ λΉ λ₯΄κ² μ΄λν μ μλλ‘ νλ€.
βοΈ<section>
: νμ΄μ§μ μΌλΆλΆμ μ§μ
: ν <section>μ λ 립μ μΈ μ½ν μΈ λΈλ‘μ λνλ΄λ©°, μ λͺ©μ κ°μ§ μ μλ€.
βοΈ<article>
: μ¬λ¬ λ¬Έλ¨μ λ¬Άλ νκ·Έ, λ 립μ μΈ μ½ν μΈ λ₯Ό μ μν λ μ¬μ©
⇒μλ₯Ό λ€μ΄, μΉ νμ΄μ§μμ νλμ λ΄μ€κΈ°μ¬λ <article>λ‘ νμν μ μλ€. μ΄ κΈ°μ¬λ₯Ό λ 립μ μΌλ‘ λ€λ₯Έ κ³³μ ν¬ν¨μν€κ±°λ μ¬μ¬μ©ν μ μκΈ° λλ¬Έμ΄λ€. κ·Έλ¦¬κ³ κΈ°μ¬ λͺ©λ‘μ κ°κ°μ <section>μΌλ‘ ꡬμ±ν μ μλ€.
3. CSS μ€νμΌ μνΈ μ¬μ©
CSS μ€νμΌ μνΈλ₯Ό μ¬μ©νμ¬ λμμΈκ³Ό λ μ΄μμμ λΆλ¦¬νκ³ , μΉ νμ΄μ§μ λ΄μ©κ³Ό λμμΈμ λΆλ¦¬νμ¬ μ μ§λ³΄μ λ° νμ₯μ±μ λμΌ μ μλ€.
4. μΉ μ κ·Όμ± κ³ λ €
μΉ νμ΄μ§λ₯Ό λ§λ€ λ λͺ¨λ μ¬μ©μκ° μ½κ² μ κ·Όν μ μλλ‘ μΉ μ κ·Όμ±μ κ³ λ €ν΄μΌ νλ€. μλ₯Ό λ€μ΄, μκ° μ₯μ μΈμ΄ μ€ν¬λ¦° 리λλ₯Ό μ¬μ©νμ¬ μΉ νμ΄μ§λ₯Ό μ½μ μ μλλ‘ alt μμ±μ μ¬μ©νμ¬ μ΄λ―Έμ§μ λν μ€λͺ μ μ 곡νκ±°λ, ν€λ³΄λλ§μΌλ‘ λͺ¨λ κΈ°λ₯μ μ¬μ©ν μ μλλ‘ tabindex μμ±μ μ¬μ©νλ λ±μ μΈμ¬ν μμ μ΄ νμνλ€.
*alt μμ±
<img src="example-image.jpg" alt="μμνκ²½ μ΄λ―Έμ§: ν΄μ§λ
λ
Έμμ΄ λΉμΉλ ν΄λ³ νκ²½">
*tabindex μμ±
tabindex μμ±μ HTML μμμ ν ν€(Tab Key) μμλ₯Ό μ§μ νλλ° μ¬μ©λλ μμ±μ΄λ€.
<input type="text" name="name" tabindex="1">
<input type="text" name="email" tabindex="2">
<input type="submit" value="Submit" tabindex="3">
πμΉ νμ€μ μ₯μ
1. μΉ νμ΄μ§μ νΈνμ±
μΉ νμ€μ μ€μνλ©΄, μΉ νμ΄μ§κ° λͺ¨λ λΈλΌμ°μ μμ μΌκ΄μ μΌλ‘ νμλκ² λλ€. μ΄λ₯Ό ν΅ν΄ μ¬μ©μλ€μ μ΄λ€ λΈλΌμ°μ λ₯Ό μ¬μ©νλλΌλ λμΌν μ¬μ©μ κ²½νμ μ»μ μ μμ΄ μ€λλ λΈλΌμ°μ μμλ 컨ν μΈ κ° μ μ νκ² νμλκ³ νΈνμ±κ³Ό μ΄μ©μ±μ΄ ν보λλ€.
2. κ²μ μμ§ μ΅μ ν(SEO)
μΉ νμ€μ μ€μνλ©΄, κ²μ μμ§μμ μΉ νμ΄μ§λ₯Ό λμ± μ μΈμν μ μλ€. μ΄λ₯Ό ν΅ν΄ λμ± λμ κ²μ κ²°κ³Όλ₯Ό μ»μ μ μλ€.
3. μ μ§λ³΄μ λ° νμ₯μ±
μΉ νμ€μ μ€μνλ©΄, μΉ νμ΄μ§λ₯Ό λ§λλλ° νμν μκ°κ³Ό λΉμ©μ μ€μΌ μ μμ΄ μ μ§λ³΄μ λ° νμ₯μ±μ΄ μ’μμ§λ€. λν λ Όλ¦¬μ μ΄κ³ ν¨μ¨μ μΌλ‘ μμ±λ μΉ λ¬Έμλ₯Ό μ½λμ μμ΄ μ€μ΄ νμΌ ν¬κΈ°κ° μ€κ³ μλ² λΆλ΄μ κ°μλ‘ μ΄μ΄μ§λ€.
4. μΉ μ κ·Όμ± ν₯μ
μΉ νμ€μ μ€μνλ©΄, λͺ¨λ μ¬μ©μκ° μ½κ² μΉ νμ΄μ§μ μ κ·Όν μ μλλ‘ μΉ μ κ·Όμ±μ κ³ λ €ν μ μλ€. μλ₯Ό λ€μ΄, λ€μν λΈλΌμ°μ , ν΄λν° PDA, μ₯μ μΈ μ§μμ© νλ‘κ·Έλ¨μμλ λμμ΄ κ°λ₯νλ―λ‘ μ κ·Όμ±μ΄ ν₯μλκ³ ν¬λ¦°λ¦¬λ λ± λ³΄μ‘°κ³΅ν κΈ°κΈ° μ¬μ©μλ€μ΄ μ‘°κΈ λ μ νν μ 보λ₯Ό μ»μ μ μλλ‘ λμμ μ€λ€.
β¨μμ½νλ©΄ μΉνμ€μ΄λ μ μμμ μκ΄μμ΄ μΉ νμ΄μ§κ° λμΌνκ² λ³΄μ΄κ³ μ μμ μΌλ‘ μλν μ μλλ‘ νκΈ°μν κΆκ³ μμ λͺ¨μμ΄λΌκ³ ν μ μκ³ , μΉ νμ€μ μ€μνλ κ°λ°λ°©λ²μ μ μ ν μλ§¨ν± νκ·Έλ₯Ό μ¬μ©νκ³ μΉ μ κ·Όμ±μ κ³ λ €ν΄ κ°λ°νλ κ²μ΄λ€.β¨
πμΆμ²/μ°Έκ³
https://inpa.tistory.com/entry/WEB-π-μΉ-νμ€μ-μ΄ν΄
https://cocobi.tistory.com/170
https://helloworld-88.tistory.com/96
'π»μΉ(Web) > React' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[React]Firebaseλ‘ React λ°°ν¬νκΈ°, Mixed-Content μλ¬ (1) | 2023.09.03 |
---|---|
[React]Netlifyλ‘ React λ°°ν¬νκΈ°: μλ‘κ³ μΉ¨, API μ°κ²° μλ¬ ν΄κ²°λ°©λ² (0) | 2023.09.01 |
[React]React νλ‘μ νΈμ CSS μ μ©νλ λ°©λ²(Nomad Coders κ°μ μ 리) (0) | 2023.08.15 |
[React]Themesλ₯Ό μ΄μ©ν μΌκ΄μ± μλ μ€νμΌ κ΄λ¦¬ (0) | 2023.06.17 |
[React]CORS μλ¬ (0) | 2023.06.16 |