[HTML] HTML ์ด์ ๋ฆฌ (2) _ ๋ฌธ์ ๊ตฌ์กฐํ
๐ ์๋งจํฑ ์น
๊ฒ์์์ง์ ์น ํ์ด์ง์ ๋ํ ์ ๋ณด๋ฅผ ์ ์ ์๋ค. ๋๋ฌธ์ HTML5๋ ์ด๋ฐ ๋ฌธ์ ๋ฅผ ๊ทน๋ณตํ๊ธฐ ์ํด <header>, <section>,<article>๊ณผ ๊ฐ์ ๋ฌธ์์ ๊ตฌ์กฐ์ ์๋ฏธ๋ฅผ ํํํ๋ ํ๊ทธ๋ค์ ์ถ๊ฐํ๋ค. ์น ๋ฌธ์๋ฅผ ๊ตฌ์กฐํํ์ฌ ์๋ฏธ ์๋ ๋ด์ฉ ํ์์ด ์ฉ์ดํ ์น์ ์๋งจํฑ ์น์ด๋ผ๊ณ ํ๋ค. ๋ํ <header>, <section>, <article>,<summary>,<mark> ๋ฑ์ ํ๊ทธ๋ฅผ ์๋งจํฑ ํ๊ทธ๋ผ๊ณ ํ๋ค.
<!DOCTYPE html>
<html> <head> <meta charset="utf-8">
<title> HTML5 ๋ฌธ์ ๊ตฌ์กฐ ์๋งจํฑ ํ๊ทธ ์ฌ์ฉ</title>
<style>
html, body {margin:0; padding: 0; height: 100%;}
header { width: 100%; height: 15%; background: yellow;}
nav { width: 15%; height: 70%; float: left; background: orange;}
section { width: 70%; height: 70%; float: left; background: olivedrab;}
aside { width: 15%; height: 70%; float: left; background: orange;}
footer { width: 100%; height: 15%; clear: both; background: plum;}
</style>
</head>
<body>
<header>header</header>
<nav>nav</nav>
<section>section</section>
<aside>aside</aside>
<footer>footer</footer>
</body>
</html>
RESULT :
๊ฒฐ๊ณผ ๊ฐ์ ๋ณด๋ฉฐ ์ค๋ช ํ๋๋ก ํ๊ฒ ๋ค.
- <header> ํ๊ทธ : ํ์ด์ง๋ ์น์ ์ ๋จธ๋ฆฌ๋ง์ ํํํ๋ ํ๊ทธ์ด๋ค. ๋ณดํต ๋จธ๋ฆฌ๋ง์๋ ํ์ด์ง ์ ๋ชฉ, ํ์ด์ง๋ฅผ ์๊ฐํ๋ ๊ฐ๋จํ ๋ด์ฉ์ด ๋ค์ด๊ฐ๋ค.
- <nav>ํ๊ทธ: navigation์ ์ค๋ง๋ก ํ์ดํผ๋งํฌ๋ค์ ๋ชจ์๋์ ์น์ ์ด๋ค. ํ์ด์ง ๋ด ๋ชฉ์ฐจ๋ฅผ ๋ง๋ค๊ธฐ ์ํด ์ฃผ๋ก ์ฌ์ฉ๋๋ค.
- <section> ํ๊ทธ: ๋ฌธ์์ ์ฅ ํน์ ์ ์ ๊ตฌ์ฑํ๋ ์ญํ ์ ํ๋ฉฐ ์น์ ์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ํค๋ฉํ๊ทธ๋ก ์น์ ์ ์ฃผ์ ๋ฅผ ๊ธฐ์ฌํ๋ ๊ฒ์ด ๋ฐ๋์งํ๋ค.
- <article> ํ๊ทธ: <section>์ด ๋ณธ๋ฌธ์์ ํ์์ ์ธ ๋ด์ฉ์ ๋ด๋๋ค๋ฉด <article>์ ์น ํ์ด์ง์ ๋ณธ์ง์ ํผ์ํ์ง ์๋ ๋ด์ฉ๋ค์ ๋ด๋ ๋ฐ ์ฃผ๋ก ์ฌ์ฉ๋๋ค.
- <aside> ํ๊ทธ: ์น ํ์ด์ง ๋ณธ๋ฌธ ํ๋ฆ์์ ์ฝ๊ฐ ๋ฒ์ด๋ ๋ ธํธ๋ ํ,์ ๋ฌธ,์ก์ง์์ ์ฃผ์ ๊ธฐ์ฌ ์์ ์งค๋งํ๊ฒ ๊ณ๋ค์ด๋ ๊ด๋ จ ๊ธฐ์ฌ, ์ฝ์ ์ด๊ตฌ๋ก ํ์๋ ๋ ผํ์ด๋ ๊ธ ๋ฑ์ ๋ด๋ ํ๊ทธ์ด๋ค.
- <footer> ํ๊ทธ: ์ ์๋ ์ ์๊ถ ์ ๋ณด๋ฑ์ ์ฃผ๋ก ํ์ํ๋ ๊ผฌ๋ฆฌ๋ง ์์ญ ํ๊ทธ์ด๋ค.
๐ ์๋งจํฑ ํ๊ทธ
<figure> ํ๊ทธ
<firgure>๋ ๋ณธ๋ฌธ์ ์ฝ์ ๋ ๊ทธ๋ฆผ์ ๋ธ๋กํ ํ๋ ์๋งจํฑ ํ๊ทธ์ด๋ค. <figure> ํ๊ทธ๋ฅผ ํ์ฉํ๋ฉด ์ด๋ฏธ์ง, ๋์์, ์์ค ์ฝ๋ ๋ฑ ์ฝํ ์ธ ๋ฅผ ๋ธ๋กํ ํ ์ ์๋ค. ๊ทธ๋ฆผ ์ ๋ชฉ์ <figure> ํ๊ทธ ๋ด์ <figcaption> ํ๊ทธ๋ก ์์ฑํ๋ค.
<!DOCTYPE html>
<html>
<head> <meta charset="utf-8">
<title> figure ํ๊ทธ ํ์ฉ </title>
</head>
<body>
<h3> figure ํ๊ทธ ํ์ฉ </h3> <hr>
<figure id="1-1">
<figcaption> alert() ํจ์ ํ์ฉ </figcaption>
<pre>
<code>function f() {alert("๊ฒฝ๊ณ ํฉ๋๋ค");}</code>
</pre> <hr>
<small>์คํ๊ฒฐ๊ณผ</small>
<pre>
<img src="media/alert.png" alt="์คํ๊ฒฐ๊ณผ">
</pre>
</figure>
</body>
</html>
RESULT:
<details>์ <summary>
<details> ๋ ์์ธ ์ ๋ณด๋ฅผ ๋ด๋ ์๋งจํฑ ๋ธ๋ก ํ๊ทธ์ด๋ค. <details>๋ก ๋ง๋ ๋ธ๋ก์ ๋ํด ๋ธ๋ผ์ฐ์ ํ๋ฉด์ ํธ๋ค์ด ๋ํ๋๋ฉฐ, ์ฌ์ฉ์๊ฐ ํธ๋ค์ ํด๋ฆญํ์ฌ ์์ธ ์ ๋ณด๋ฅผ ๊ฐ์ถ๊ฑฐ๋ ๋ณด์ด๊ฒ ํ ์ ์๋ค. <summary>ํ๊ทธ๋ <details>๋ก ๊ตฌ์ฑ๋๋ ๋ธ๋ก์ ์ ๋ชฉ์ ํํํ๋ค.
<!DOCTYPE html>
<html>
<head> <meta charset="utf-8">
<title> details ์ summary ํ๊ทธ </title>
</head>
<body>
<h3> details์ summary ํ๊ทธ </h3>
Q & A ๋ฆฌ์คํธ
<hr>
<details>
<summary>Question 1</summary>
<p> ์น ๊ฐ๋ฐ์๊ฐ ์์์ผ ํ๋ ์ธ์ด 3๊ฐ์ง ? </p>
</details>
<details>
<summary>Answer 1</summary>
<p> HTML5,CSS,JAVASCRIPT </p>
</details>
</body>
</html>
RESULT :
์๋งจํฑ ์ธ๋ผ์ธ ํ๊ทธ
- <marks> - ์ค์ํ ํ ์คํธ์์ ํ์
- <time> - ์๊ฐ ์ ๋ณด์์ ํ์
- <meter> - ์ฃผ์ด์ง ๋ฒ์๋ %์ ๋ฐ์ดํฐ ์ ํ์
- <progress> - ์์ ์ ์งํ์ ๋ ํ์, ์ ์ง์ ์ผ๋ก ๋ณํ๋ ์์ ๋ํ๋ด๋๋ฐ ์ฌ์ฉ
!DOCTYPE html>
<html>
<head> <meta charset="utf-8">
<title> ์ธ๋ผ์ธ ์๋งจํฑ ํ๊ทธ </title>
</head>
<body>
<h3> ์ธ๋ผ์ธ ์๋งจํฑ ํ๊ทธ ์ฌ๋ก </h3> <hr>
<p>
๋ด์ผ <mark> HTML ์ํ </mark> <br>
์๊ฐ์ <time> 09:00 </time> <br>
๋์ด๋ <meter value="0.8" max="1.0"> 80% </meter> <br>
์๋ฃ ์
๋ก๋ฉ(20%) <progress value="2" max="10"></progress> <br>
</p>
</body>
</html>
RESULT :
๐ ์น ํผ
์น ํ์ด์ง๋ฅผ ํตํด ์ฌ์ฉ์ ์ ๋ ฅ์ ๋ฐ๋ ํผ์ ์น ํผ (webform) ํน์ ํผ (form)์ด๋ผ๊ณ ํ๋ค. ํผ ํ๊ทธ๋ค์ ํผ ์์(form element)๋ผ๊ณ ๋ถ๋ฅธ๋ค. ํผ์ ๋ก๊ทธ์ธ, ๋ฑ๋ก, ๊ฒ์, ์์ฝ, ์ผํ ๋ฑ์ ๋ค์ํ ์น ์๋น์ค์์ ์ฌ์ฉ์์ ์ ๋ ฅ์ ๋ฐ๊ธฐ ์ํด ์ฌ์ฉ๋๋ค.
<!DOCTYPE html>
<html>
<head> <meta charset="utf-8">
<title> ๋ก๊ทธ์ธ ํผ </title></head>
<body>
<h3> ๋ก๊ทธ์ธ ํผ </h3> <hr>
<form name="fo" method="get">
์ฌ์ฉ์ ID: <input type="text" size="15" value=""> <br>
๋น๋ฐ๋ฒํธ: <input type="password" size="15" value=""> <!-- ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ๋ฌธ์๊ฐ ๋๋ฌ๋์ง ์๋๋ก *๊ฐ ๋์ ์ถ๋ ฅ-->
<input type="submit" value="์๋ฃ">
<!--SUBMIT ๋ฒํผ์ ๋ง๋๋ ํ๊ทธ, ๋ฒํผ์ ํ๋ฉด์๋ ์๋ฃ ๊ธ์ ์ถ๋ ฅ / ๋ฒํผ์ ๋๋ฅด๋ฉด ์ฌ์ฉ์๊ฐ ํผ ์์๋ค์ ์
๋ ฅํ ๋ด์ฉ์ ์น ์๋ฒ์ ์ ๋ฌ -->
</form>
</body>
</html>
RESULT :
๐ ํผ ํ๊ทธ <form>
- name ์์ฑ: ํผ์ ์ด๋ฆ์ ์ง์ ํ๋ ์์ฑ
- action ์์ฑ: ํผ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ ์น ์๋ฒ ์์ฉํ๋ก๊ทธ๋จ์ ์ง์ . submit ๋ฒํผ์ด ํด๋ฆญ๋๋ฉด ๋ธ๋ผ์ฐ์ ๋ action ์์ฑ์ ์ง์ ๋ ์น ์๋ฒ์ ์ฐ๊ฒฐํ๊ณ ์น ์๋ฒ ์์ฉํ๋ก๊ทธ๋จ์ ์คํํ ๊ฒ์ ์ง์ํ๋ค. ์ด๋ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ํผ ๋ฐ์ดํฐ๋ฅผ ํจ๊ป ์ ์กํ๋ค.
- method ์์ฑ: ํผ ๋ฐ์ดํฐ๋ฅผ ์น ์๋ฒ๋ก ์ ์กํ๋ ํ์์ ์ง์. ๋ํ์ ์ธ ๋ฐฉ๋ฒ์ด GET๊ณผ POST์ด๋ค.
ํ ์คํธ ์ ๋ ฅ, <input type="text|password">, <textarea>
<!DOCTYPE html>
<html>
<head> <meta charset="utf-8">
<title> ํ
์คํธ ์
๋ ฅ ํผ </title>
</head>
<body>
<h3> ์๊ธฐ ์๊ฐ์ ์์ฑ </h3>
<hr>
<form>
์ด๋ฆ: <input type="text" vlaue="" size="3" maxlength="5"><br>
์ํธ: <input type="password" value="" maxlength="4"><br>
์์์: <textarea cols="10" rows="5" wrap="soft"> ์ด๊ธฐ ํ
์คํธ์
๋๋ค. ์ด๊ณณ์ ์๊ธฐ์๊ฐ์๋ฅผ ์์ฑํ์์ค.
</textarea>
</form>
</body>
</html>
RESULT:
<input type="text" value="์ด๊ธฐ์ ์ถ๋ ฅ๋๋ ๋ฌธ์์ด>
<textarea cols="20" rows="5">
ํ๋ฉด์ ์ถ๋ ฅํ ์ด๊ธฐ ํ
์คํธ์
๋๋ค. ์์ผ๋ฉด ๋น ๊ณต๊ฐ๋ง ์ถ๋ ฅ๋ฉ๋๋ค.
์์ input์ ์ฃผ์๋ ์ด๋ฆ ๋ฑ ํ ์ค ํ ์คํธ๋ฅผ ์ ๋ ฅ๋ฐ๋ ์ฐฝ์ด๋ฉฐ textarea ๋ ์ฌ๋ฌ ์ค์ ํ ์คํธ๋ฅผ ์ ๋ ฅ๋ฐ์๋ ์ฌ์ฉํ๋ ํ๊ทธ์ด๋ค.
๋ฐ์ดํฐ ๋ชฉ๋ก์ ๊ฐ์ง ํ ์คํธ ์ ๋ ฅ ์ฐฝ, <datalist>
<datalist></datalist> ํ๊ทธ๋ฅผ ํ์ฉํ๋ฉด ์ถ์ฒ ๊ฒ์์ด ๋ชฉ๋ก์ ํผ์น๊ณ ํญ๋ชฉ์ ์ ํํ ์ ์๋ค.
๋ฐ ์์ ๋ฅผ ๋ณด๋ฉด <input> ํ๊ทธ์ list ์์ฑ ๊ฐ๊ณผ <datalist>์ id ์์ฑ ๊ฐ์ ๋์ผํ๊ฒ ์ฃผ์ด ์ด ๋์ ์ฐ๊ฒฐํ๋ค.
<!DOCTYPE html>
<html>
<head> <meta charset="utf-8">
<title>๋ฐ์ดํฐ ๋ชฉ๋ก์ ๊ฐ์ง ํ
์คํธ ์
๋ ฅ</title> </head>
<body>
<h3> ๊ฐ๋ณด๊ณ ์ถ์ ๊ณณ</h3> <hr>
<form>
๋๋ผ: <input type="text" list="countries"><br>
<datalist id="countries">
<option value="๊ฐ๋">
<option value="๊ฐ๋ด">
<option value="์ค์์ค">
<option value="๋ธ๋ผ์ง">
</datalist>
๋ณด๊ณ ์ถ์๊ฒ: <input type="text" list="what"><br>
<datalist id="what">
<option value="์ฐ">
<option value="๋ฐ๋ค">
<option value="๋์">
</datalist>
</form>
</body>
</html>
ํ ์คํธ/์ด๋ฏธ์ง ๋ฒํผ ๋ง๋ค๊ธฐ
๋ฒํผ์ <input> ํ๊ทธ๋ <button> ํ๊ทธ๋ก ๋ง๋ค ์ ์์ผ๋ฉฐ type ์์ฑ์ผ๋ก ๋ฒํผ์ ๊ธฐ๋ฅ์ ์ ํํ ์ ์๋ค.
<input type="button|reset|submit|image"
name="๋ฒํผ ์ด๋ฆ"
value="๋ฌธ์์ด">
๋ฒํผ ๋ฌธ์์ด์ด๋ ์ด๋ฏธ์ง
</button>
์ ํํ ์ ๋ ฅ
์ฒดํฌ๋ฐ์ค ๋ง๋ค๊ธฐ, <input type="checkbox">
์ฒดํฌ๋ฐ์ค๋ ์ ํ/ ํด์ ์ค ํ๋๋ฅผ ์ ํํ๋ ํผ ์์๋ค. checked ์์ฑ์ ๊ฐ์ง ์ฒดํฌ๋ฐ์ค๋ ์ฒ์๋ถํฐ ์ ํ์ด ๋ ์ฑ๋ก ์ถ๋ ฅ๋๋ค.
<!DOCTYPE html>
<html>
<head><meta charset="utf-8">
<title> ์ฒดํฌ ๋ฐ์ค ๋ง๋ค๊ธฐ </title></head>
<body>
<h3> ๋จน๊ณ ์ถ์ ๊ฒ ๋ชจ๋ ์ฒดํฌํ์ธ์ </h3>
<hr>
<form method="get">
์ง์ฅ๋ฉด <input type="checkbox" name="food1" value="1">
์งฌ๋ฝ <input type="checkbox" name="food2" value="2" checked>
ํ์์ก <input type="checkbox" name="food3" value="3">
<input type="submit" value="์ ์ถ">
</form>
</body>
</html>
๋ผ๋์ค๋ฒํผ ๋ง๋ค๊ธฐ, <input type="radio">
๋ผ๋์ค ๋ฒํผ์ name ์์ฑ ๊ฐ์ด ๊ฐ์ ๋ผ๋์ค ๋ฒํผ๋ค์ด ํ๋์ ๊ทธ๋ฃน์ ํ์ฑํ๊ณ ๊ทธ ์ค ํ๋๋ง ์ ํ๋๋ ํผ ์์๋ค. checked ์์ฑ์ ๊ฐ์ง ๊ฒ์ด ์ ํ์ํ๋ก ์ถ๋ ฅ๋๋ค.
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title> ๋ผ๋์ค๋ฒํผ ๋ง๋ค๊ธฐ</title></head>
<body>
<h3> ๋จน๊ณ ์ถ์ ๊ฒ ํ๋๋ง ์ ํ ?</h3>
<hr>
<form>
<input type="radio" name="china" value="1">
์ง์ฅ๋ฉด <img src="media/jajang.png"><br>
<input type="radio" name="china" value="2" checked>
์งฌ๋ฝ <img src="media/jjambbong.png"><br>
<input type="radio" name="china" value="3">
ํ์์ก <img src="media/tangsuyuk.png">
</form>
</body>
</html>
ํผ ์์๋ค์ ๊ทธ๋ฃนํ, <fieldset>
<fieldset> ํ๊ทธ๋ ๋ชธ ์์๋ค์ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ์ ์ ์์ผ๋ฉฐ ๊ทธ๋ฃน์ ์ ๋ชฉ์ <legend> ํ๊ทธ๋ก ํํํ๋ค. ๋ธ๋ผ์ฐ์ ๋ ๊ทธ๋ฃน์ ๋๋ฌ์ธ๋ ์ธ๊ฐ์ ๋ฐ์ค์ ์ ๋ชฉ์ ์ถ๋ ฅํ์ฌ ๊ทธ๋ฃน์ ํ์ํ๋ค.
<!DOCTYPE html>
<html>
<head> <meta charset="utf-8">
<title> ํผ ์
๋ ฅ ๊ทธ๋ฃน์ผ๋ก ๋ฌถ๊ธฐ </title></head>
<body>
<h3> ํ์ ์ ๋ณด๋ฅผ ์
๋ ฅํ์ธ์.</h3>
<hr>
<form>
<fieldset>
<legend> ํ์์ ๋ณด </legend>
์ด๋ฉ์ผ: <input type="email"><br>
ํํ์ด์ง: <input type="url"><br>
์ ํ๋ฒํธ: <input type="tel">
</fieldset>
<small> ์ง๋ฌธ: Tel. 010-111-1111 </small>
</form>
</body>
</html>