일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Selenium
- attention
- 한빛미디어
- CBOW
- 수동설치
- AndroidStudio를활용한안드로이드프로그래밍
- 예제중심HTML&자바스크립트&CSS
- Lamp
- 가비아
- image
- jupyter
- 크롤링
- 비지도학습
- deeplearning
- Crawling
- 밑바닥부터시작하는딥러닝
- word2vec
- 딥러닝
- 머신러닝
- 생활코딩
- MySQL
- aws
- 한빛아카데미
- 셀레니움
- 밑바닥부터시작하는딥러닝2
- Apache
- 컴파일설치
- 프로그램새내기를위한자바언어프로그래밍
- 논문리뷰
- 소스설치
- Today
- Total
안녕, 세상!
3. HTML 기초 문법(2) 본문
(2) 목록 태그
HTML의 목록 태그로 시각적으로 짜임새 있는 형태의 글을 만들 수 있습니다.
목록 태그는 번호가 없는 목록, 번호 있는 목록, 메뉴 목록, 디렉터리 목록 등 다양한 형태가 제공됩니다.
다음은 목록태그의 종류입니다.
목록태그 | 의미 |
<UL> | 번호 없는 목록(Unordered List) |
<OL> | 번호 있는 목록(Ordered List) |
<MENU> | 메뉴 목록(Menu List) |
<DIR> | 디렉터리 목록(Directory List) |
<DL> | 정의 목록(Definition List) |
다음은 목록 태그 하위에서 사용하는 태그들입니다.
목록태그 | 의미 |
<LI> | 리스트 항목 |
<LH> | 리스트 제목 |
<DT> | 정의 이름 |
<DD> | 정의의 설명 |
① 번호 없는 목록(Unordered List)
번호 없는 목록은 각 항목 앞에 불렛(bullet)이 붙는 목록을 말합니다.
불렛은 목록을 나타내는 특수기호입니다.
<UL> 태그를 이용하며, 목록의 제목은 <LH> 태그 안에 작성하고, <LI> 태그 안에 각 항목을 작성합니다.
<LI> 태그 하위에 <UL>태그를 넣어서 계층적 정보를 나타낼 수 있습니다.
형식은 다음과 같습니다.
<UL>
<LH> 목록의 제목 </LH>
<LI> 항목 </LI>
....
</UL>
불렛의 모양은 TYPE 속성에 다음 값을 주어 지정할 수 있습니다.
DISC : 검은 원
CIRCLE : 하얀 원
SQUARE : 검은 사각형
다음은 번호 없는 목록의 예시입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<HTML>
<HEAD><title> 번호 없는 목록 </title></HEAD>
<BODY>
<ul>
<lh><h3>먹고싶은 음식</h3></lh>
<li>한식
<ul type="SQUARE"><li>전주비빔밥</li>
<li>한우불고기</li></ul>
</li>
<li>양식
<ul type="circle"><li>햄버거</li>
<li>피자</li>
</li>
</ul>
</BODY>
</HTML>
|
cs |
② 번호있는 목록(Ordered List)
번호 있는 목록은 각 항목 앞에 번호가 붙은 목록으로 <OL>태그를 이용해 작성합니다.
<OL>과 </OL> 태그 안에 <LH>와 </LH> 사이에 목록의 제목을 넣고 <LI> 다음에 항목의 내용을 씁니다.
번호 없는 목록과 마찬가지로 중첩이 가능합니다.
초기치로 지정된 번호는 아라비아 숫자(1,2,3..)이며, 번호 형식은 TYPE 속성에 다음 값을 주어 지정합니다.
I : 로마자
A : 알파벳
다음은 예시입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<HTML>
<HEAD><title> 번호 있는 목록 </title></HEAD>
<BODY>
<lh><h3>먹고싶은 음식</h3></lh>
<li>한식
<Ol type="A"><li>전주비빔밥</li>
<li>한우불고기</li></Ol>
</li>
<li>양식
<Ol type="I"><li>햄버거</li>
<li>피자</li></OL>
</li>
<li>일식
<OL><li>스시</li>
<li>라멘</li></ol>
</BODY>
</HTML>
|
cs |
③ 정의 목록(Definition List)
정의 목록은 어떤 항목에 대한 정의나 설명을 써줄 때 사용하며, <DL> 태그를 사용합니다.
<DL>과 </DL> 태그 내에서 <LH>와 </LH> 태그 사이에는 목록의 제목을, <DT>와 </DT> 태그 사이에는 항목을, <DD>와 </DD> 태그 사이에는 항목에 대한 정의나 설명을 씁니다.
중첩이 가능하며, 하위 항목으로 들어감에 따라 문단이 조금식 안쪽으로 들어갑니다.
다음은 예시입니다.
1
2
3
4
5
6
7
8
9
10
11
12
|
<HTML>
<HEAD><title> 정의 목록 </title></HEAD>
<BODY>
<h3>목록</h3>
<dL>
<dt>번호없는 목록</dt>
<dd>각 항목 앞에 불렛이 붙는 목록입니다.</dd>
<dt>번호있는 목록</dt>
<dd>각 항목 앞에 번호가 붙는 목록입니다.</dd>
</dl>
</BODY>
</HTML>
|
cs |
④ 목록 겹쳐 쓰기
서로 다른 형식의 목록이라도 중첩해 사용할 수 있으며, 계층적인 구조를 이용해 효과적으로 페이지를 만들 수 있습니다.
(3) 테이블
① 테이블 삽입
웹페이지에서 테이블을 삽입하는 방법은 <Table> </Table> 태그를 사용합니다.
테이블은 단순한 도표뿐만 아니라 복잡한 문단을 정렬할 수 있고, 표제 지정도 가능하고 항목들을 비교할 수 있으며, 문서를 깔끔하게 정리할 수 있습니다.
테이블에서 사용하는 태그는 다음과 같습니다.
테이블 태그 | 의미 |
<TABLE> | 테이블을 선언하는 태그 (테이블의 시작과 끝을 알림) |
<TR> | Table Row, 테이블 내의 한 행을 정의함 |
<TD> | Table Data, 각 행의 셀을 만들 때 사용함 |
<TH> | Table Header, 행에 있는 셀의 제목을 지정하여 강조되게 표시함 |
<CAPTION> | 테이블의 제목을 표시함 |
<TD>는 항상 <TR>에 둘러싸여야 합니다.
<TD> 대신에 <TH> 태그를 쓰면 수평, 수직 정렬이 자동으로 가운데가 되며, 볼드(bold)체로 표시된 표제가 됩니다.
<CAPTION>은 ALIGN 속성을 이용하여 테이블의 제목을 정렬할 수 있습니다.
<CAPTION ALIGN="TOP" or "BOTTOM"> 테이블의 제목 </CAPTION>
② 테이블의 속성
테이블 태그 내의 속성은 <TABLE> 태그나 <TD> 정의할 때 설정하며 다음과 같습니다.
테이블 태그 속성 | 의미 |
WIDTH | 테이블 가로 크기 (픽셀수 or 백분율) |
HEIGHT | 테이블의 세로 크기 (픽셀수 or 백분율) |
BORDER | 테이블의 테두리 굵기 (픽셀수) |
CELLSPACING | 셀과 셀 사이의 여백 (픽셀수) |
CELLPADDING | 셀과 문자 사이의 여백 (픽셀수) |
BGCOLOR | 테이블의 색 지정 (색상명 or RGB값) |
다음은 테이블 삽입의 예제입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
<HTML>
<HEAD><title> 정의 목록 </title></HEAD>
<BODY>
<h3> 메 뉴 </h3>
<table border="6" width="30%" height="15%">
<tr>
<th>품명</th><th>금액</th></tr>
<tr>
<td>어글리슈즈</td><td>180000원</td></tr>
<tr>
<td>독일군단화</td><td>230000원</td></tr>
</table> <br>
<table border="1" cellpadding="5">
<tr>
<td>품명</td><td>금액</td></tr>
<tr>
<td>어글리슈즈</td><td>180000원</td></tr>
<tr>
<td>독일군단화</td><td>230000원</td></tr>
</table> <br>
<table border="2" cellspacing="10">
<tr>
<td>품명</td><td>금액</td></tr>
<tr>
<td>어글리슈즈</td><td>180000원</td></tr>
<tr>
<td>독일군단화</td><td>230000원</td></tr>
</table> <br>
</BODY>
</HTML>
|
cs |
③ 테이블 셀 합치기
테이블 태그 내의 셀을 합칠 수 있습니다.
<TD> 태그를 정의할 때 설정하며 다음과 같습니다.
ROWSPAN = 행의 수 : 여러 행에 걸치는 셀의 행 합치기
COLSPAN = 열의 수 : 여러 열에 걸치는 셀의 열 합치기
다음은 셀 합치기 예제입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
<HTML>
<HEAD><title> 정의 목록 </title></HEAD>
<BODY>
<h3> 선호 스타일 </h3>
<table width="200" border="1"> <!-- width만 설정하고 border설정안하면 테이블 태두리가 없어짐 -->
<tr>
<td rowspan="3">옷스타일</td>
<td width="100">캐주얼</td>
</tr>
<tr>
<td>스트릿</td>
</tr>
<tr>
<td>포멀</td>
</tr>
</table>
</BODY>
</HTML>
|
cs |
rowspan=3 을 해서 3개의 행을 합쳤습니다.
(4) 프레임
프레임은 웹 브라우저 화면을 여러 개 창으로 나누어주는 역할을 합니다.
이러한 프레임 기능을 이용해 각 창 마다 독립적인 기능을 하는 페이지를 작성할 수 있습니다.
HTML 문서를 몇 개의 파일로 나누어 작성하면 각 파일을 프레임으로 구분된 각각의 창에서 보여줄 수 있습니다.
하지만 HTML5 버젼에서는 프레임을 더 이상 지원하지 않습니다.
아래의 개념은 참고만 해주시면 됩니다.
① 화면의 분할
프레임을 정의할 때 <FRAMESET> 태그와 <FRAME> 태그를 이용하여 정의합니다.
<FRAMESET> : 프레임을 사용하기 위해 선언하는 태그
<FRAME> : 실제로 프레임 창을 나누는 기능을 담당하는 태그
프레임 정의 구조 형식은 다음과 같습니다.
<FRAMESET ROWS or COLS = "프레임 수와 크기 지정">
<FRAME SRC = "프레임에 표시할 파일명">
</FRAMESET>
여기에서, 프레임 크기는 픽셀 수, 백분율(%)로 입력합니다.
픽셀의 수로 입력한 예시 : 두 개로 나눌 때 "100, * " <!-- "*"은 나머지 부분을 대신해서 사용할 수 있음 -->
백분율로 입력한 예시 : 세 개로 나눌 때 "20%, 40%, 40%"
다음은 프레임을 분할한 예제입니다.
1
2
3
4
5
6
7
8
9
10
|
<HTML>
<HEAD><title>프렘임으로 화면 나누기</title></HEAD>
<frameset rows="30%,*">
<frame src="C:///1webstudy/top.html">
<frameset cols="70%,30%">
<frame src="C:///1webstudy/left.html">
<frame src="C:///1webstudy/right.html">
</frameset>
</frameset>
</HTML>
|
cs |
top.html
1
2
3
4
5
6
7
|
<html>
<head><title>top 창</title></head>
<body>
<h2>일반적으로 타이틀이나 배너 윈도우로 사용</h2>
</body>
</html>
|
cs |
left.html
1
2
3
4
5
6
|
<html>
<head><title>left 창</title></head>
<body>
<h2>일반적으로 메뉴윈도우로 사용</h2>
</body>
</html>
|
cs |
right.html
1
2
3
4
5
6
7
|
<html>
<head><title>right 창</title></head>
<body>
<h2>일반적으로 메인윈도우로 사용</h2>
</body>
</html>
|
cs |
② 프레임의 서식
(1) 프레임의 테두리선 변경
프레임 테두리선의 굵기를 조절하거나 없앨 수 있습니다.
형식은 다음과 같습니다.
<FRAMESET BORDER = "픽셀수">
(2) 프레임의 여백 조정
<FRAME> 태그의 MARGINWIDTH와 MARGINHEIGHT 속성을 이용하여 프레임의 좌우 또는 상하의 여백을 조절할 수 있습니다.
형식은 다음과 같습니다.
<FRAME MARGINWIDTH = "픽셀수" MARGINHEIGHT = "픽셀수">
(3) 프레임의 크기 변경 금지
프레임의 크기를 사용자가 변경하지 못하도록 하기 위해서 <FRAME> 태그의 NORESIZE 속성을 이용합니다.
형식은 다음과 같습니다.
<FRAME NORESIZE>
(4) 프레임의 스크롤바 지정
<FRAME>의 SCROLLING 속성을 이용해서 프레임의 각각의 스크롤바 생성 여부를 사용자가 임의적으로 지정할 수 있습니다.
형식은 다음과 같습니다.
<FRAME SCROLLING = "YES" or "NO" or "AUTO">
yes면 무조건 스크롤바가 나타나고, no면 스크롤바가 나타나지 않고, auto면 프레임 크기보다 문서의 내용이 많을 때만 스크롤바가 나타납니다.
하지만 인터넷 익스플로러 9 버전 이상은 더 이상 스크롤 속성을 지원하지 않습니다.
크롬 창으로 실습을 해도 스크롤바가 보이지 않을 것입니다.
프레임 서식의 예시는 다음과 같습니다.
1
2
3
4
5
6
7
8
9
10
|
<HTML>
<HEAD><title>프렘임으로 화면 나누기</title></HEAD>
<frameset rows="30%,*">
<frame src="C:///1webstudy/top.html">
<frameset cols="70%,30%">
<frame src="C:///1webstudy/left.html" noresize scrolling="YES">
<frame src="C:///1webstudy/right.html" marginheight="40" marginwidth="40">
</frameset>
</frameset>
</HTML>
|
cs |
인터넷 익스플로러 9버젼 이상이기 때문에 스크롤바가 보이지 않는 것을 확인할 수 있습니다.
(5) 입력 양식
웹 서비스는 사용자와 웹 서버 간의 상호 정보 교류를 수행하는데 양방향의 서비스 CGI(Common Gateway Interface)를 통해서 이뤄집니다.
CGI를 웹 문서에서 이용하기 위해서는 사용자로부터 정보를 입력받을 수 있어야 합니다.
이때 HTML에서는 <FORM> 태그와 <INPUT> 태그를 사용하여 입력 양식을 정의합니다.
입력 양식이 사용되는 대표적인 예는 게시판, 방명록 등이 있습니다.
① 입력 양식 태그 (<FORM> 태그)
HTML 문서에서 입력 양식을 통해서 사용자의 입력 데이터를 웹서버로 전송하는데, CGI를 사용하기 위해서 <FORM> 태그를 사용해야 합니다.
형식은 다음과 같습니다.
<FORM NAME = "폼의 이름" ACTION = "URL" METHOD ="GET" or "POST">
....
</FORM>
폼 태그의 속성 | 기능 설명 |
name | 폼의 이름 윈도우 객체에 들어 있는 모든 프레임을 나타내는 속성 |
action | 입력 데이터를 처리할 CGI 프로그램의 URL, 생략하면 현재 문서 |
method | 사용자가 입력한 데이터를 서버에 전달하는 방법 - post : 표준입력 방식으로 데이터를 전송하는 입력 방식 입력 폼을 서버에 DB화 할 때 주로 사용되며, 방명록, 게시판 등에 활용 - get : URL로 데이터를 전송하는 입력 방식 입력 폼의 내용에 대한 결과를 서버로부터 가져와서 사용자에게 직접 보여줌 주로 검색 엔진의 검색 결과나 방문회수를 보여주는 카운터 등에 사용 웹 페이지의 위치를 보여주고 싶을 때 사용하는 속성 |
② 입력 태그( <INPUT> 태그 )
<FORM> 태그 내에서 입력 양식을 정의하기 위해 <INPUT> 태그가 사용됩니다.
<INPUT> 태그는 텍스트 입력, 체크 박스, 라디오 버튼, 리셋 등의 입력 폼을 만들어 사용자들의 입력 작업을 용이하게 도와주는 기능을 수행합니다.
형식은 다음과 같습니다.
<INPUT TYPE = [속성값]
NAME = "입력 양식 이름"
VALUE = "입력 양식에서 표시될 문자열"
SIZE = "문자수"
CHECKED
MAXLENGTH = "문자수">
<INPUT> 태그의 속성에 대한 속성 값의 기능을 다음과 같습니다.
속성 | 속성 값 | 기능 설명 |
TEXT | BUTTON | 버튼 입력 폼 |
CHECKBOX | 체크 박스 | |
HIDDEN | 숨기기 입력 폼 | |
PASSWORD | 패스워드 입력 폼 | |
RADIO | 라디오 버튼 | |
RESET | 리셋 버튼 | |
SUBMIT | 데이터 전송 버튼 | |
TEXT | 텍스트 입력 폼 박스 |
속성 | 속성 값 | 기능 설명 |
NAME | 문자열 | 입력한 내용을 저장할 변수의 이름을 지정 SUBMIT과 RESET을 제외한 모든 TYPE의 필수요소 |
VALUE | 문자열 | TEXT, PASSWORD : 기본 값으로 지정 CHECKBOX, RADIO : 버튼이 선택될 때 CGI로 보내는 값 SUBMIT, RESET : 버튼에 표시될 내용 지정 |
SIZE | 문자수 | TEXT, PASSWORD 입력부분에 보이는 문자수 정의 |
CHECKED | CHECKBOX, RADIO의 기본 값 선택 시 사용 | |
MAXLENGTH | 문자수 | TEXT와 PASSWORD에서 입력받을 수 있는 최대 문자수 |
③ 선택 태그 ( <SELECT> 태그 )
선택 목록을 정의하기 위해 사용되며, <FORM> 태그 안에 기술됩니다.
선택 태그의 사용 형식은 다음과 같습니다.
<SELECT NAME = "변수 이름" SIZE = "목록 창에 보이는 선택 개수" [MULTIPLE]>
<OPTION [SELECTED]> 선택 항목
</SELECT>
[MULTIPLE] 속성은 여러 개의 항목을 동시에 선택할 경우 사용합니다.
다음은 입력 양식을 이용한 예제입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
<HTML>
<HEAD><title>입력 양식</title></HEAD>
<BODY>
<form name="frame" action="/cgi-bin/post/query" method="post">
ID : <input type="text" name="id" size="12" value="Your ID" maxlength="10">
PW : <input type="password" name="pwd" size="12" maxlength="10">
<input type="submit" name="sm" value="login"><br><br>
좋아하는 계절을 선택하세요. <br>
select: <br>
<select>
<option selected> 봄 <!-- 기본적으로 화면에 선택되어 있게 하기 -->
<option>여름
<option>가을
<option>겨울
</select><br>
checkbox : <br>
<input type="checkbox" name="cb" value="cbsp">봄
<input type="checkbox" name="cb" value="cbsm">여름
<input type="checkbox" name="cb" value="cbfa" checked>가을
<input type="checkbox" name="cb" value="cbwt">겨울<br>
radio : <br>
<input type="radio" name="rd" value="rdsp" checked>봄
<input type="radio" name="rd" value="rdsm">여름
<input type="radio" name="rd" value="rdfa">가을
<input type="radio" name="rd" value="rdwt">겨울<br>
</form>
</BODY>
</HTML>
|
cs |
④ 문서 입력창
문서 입력창은 여러 줄을 전송할 때 사용하며, <TEXTAREA> 태그를 사용합니다.
형식은 다음과 같습니다.
<TEXTAREA NAME = "변수 이름" ROWS = "행의 수" COLS = "열의 수">
</TEXTAREA>
name 속성은 입력한 내용을 저장할 변수의 이름을 나타내고, rows 속성과 cols 속성은 브라우저에 표시될 줄과 칸의 수를 나타냅니다.
rows와 cols 속성을 지정하지 않으면 default 값은 rows= 1, cols= 20으로 지정됩니다.
1
2
3
4
5
6
7
8
9
10
|
<HTML>
<HEAD><title>문서 입력창</title></HEAD>
<BODY>
<form name="frame" action="/cgi-bin/post/query" method="post">
<textarea name="letter" rows="6" cols="45"> </textarea> <p>
<input type="submit" value="보내기">
<input type="submit" value="뒤로가기">
</form>
</BODY>
</HTML>
|
cs |
'It공부 > HTML' 카테고리의 다른 글
2. HTML 기초 문법(1) (0) | 2020.07.20 |
---|---|
1. HTML 개요 및 설치 (0) | 2020.07.19 |