IT보안따라잡기

HTML 학습1 본문

웹퍼블리싱/HTML

HTML 학습1

보안바라기 2021. 6. 17. 16:56
반응형

1. 하이퍼링크(Hyperlink)

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>하이퍼링크 테스트</title>
</head>
<body>
    <h1>하이퍼링크 테스트</h1>
	<a href="https://www.naver.com">네이버</a>
</body>
</html>

<a> 태그를 통해 다음과 같이 "네이버" 글자를 클릭 시 해당 주소로 바로 갈 수 있는 하이퍼링크를 생성할 수 있습니다.

 

2. 기본문법

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>1_html_01_기본문</title>
</head>
<body>
    <h1>HTML 기본 문법</h1>
    <p>1. 요소는 <strong>순차적</strong>으로 <b>중첩</b>되어야 합니다.</p>
    <p>2. 요소 및 속성 이름은 <strong>소문자</strong>여야 합니다.</p>
    <p>3. 요소는 <strong>항상</strong>닫아야 합니다.<br>- 단, 빈 요소(empty element)는 하나의 태그로 닫아 줍니다.</p>
    <p>4. 속성값에는 <a href="1_html_01_hyperlink.html">"인용부호"</a>를 붙여야 합니다.</p>
    <p>5. 속성은 속성값과 함께 써야 합니다.</p>
    <p>6. img요소와 area요소에는 alt속성이 있어야 합니다.</p>
    <img src="image.png" alt="광고배너">
    <p>7. 특수문자를 쓸 때는 <a href="http://entitycode.com">&lt;Entity Name 혹은 Entity Number</a>&gt;를 사용해야 합니다.</p>
    <p>8. 주석처리 방법은
        <!--주석내용-->형식으로 입력할 수 있습니다.
    </p>
    <p>9. 문법 유효성 검사는 <a href="http://validator.kldp.org">http://validator.kldp.org</a>에서 할 수 있습니다.</p>
</body>
</html>

HTML은 기본적으로 첫줄에 <!DOCTYPE html>로 해당 페이지가 html 문서임을 나타내주는 코드를 추가해주며, <html>, <head>, <title>, <body> 태그를 기본으로 나누게 됩니다.

<meta> 태그의 경우 문서 자체의 특성에 대해 정의하기 위해 사용하는 태그입니다.

(charset="UTF-8"의 경우 문자 인코딩 방식을 UTF-8로 지정한다는 의미)

 

3. 블록요소와 인라인요소

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>1_html_02_블록요소와 인라인요소</title>
</head>
<body>
    <h1>블록 요소</h1>
    <p>p태그 등 블록 요소는 앞뒤로 줄 바꿈이 생깁니다.</p>
    <br>
    <h1>인라인 요소</h1>
    <p>a태그 등 인라인 요소는 <a href="">한줄</a>로 출력됩니다.</p>
</body>
</html>

<p> 태그와 같은 블록 요소의 경우 앞, 뒤로 줄 바꿈이 생기게 됩니다. -> <div>

<a> 태그 같은 인라인 요소의 경우는 한줄로 출력됩니다. -> <span>

 

■ 블록(block) 타입

display 속성값이 블록(block)인 요소는 언제나 새로운 라인(line)에서 시작하며, 해당 라인의 모든 너비를 차지합니다.

 

▶ <div>요소

<div>요소는 다른 HTML 요소들을 하나로 묶는 데 자주 사용되는 대표적인 블록(block) 요소입니다.

<div>요소는 주로 여러 요소들의 스타일을 한 번에 적용하기 위해 사용됩니다.

 

■ 인라인(inline) 타입

display 속성값이 인라인(inline)인 요소는 새로운 라인(line)에서 시작하지 않습니다.

또한, 요소의 너비도 해당 라인 전체가 아닌 해당 HTML 요소의 내용(content)만큼만 차지합니다.

 

▶ <span>요소

<span>요소는 텍스트(text)의 특정 부분을 묶는 데 자주 사용되는 인라인(inline) 요소입니다.

<span>요소는 주로 텍스트의 특정 부분에 따로 스타일을 적용하기 위해 사용됩니다.

 

3. 문자와 단락

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>1_html_03_문자와 단락</title>
</head>
<body>
    <h1>제목</h1>
    <h1>h1. 6개의 헤드라인 중 1순위</h1>
    <h2>h2. 6개의 헤드라인 중 2순위</h2>
    <h3>h3. 6개의 헤드라인 중 3순위</h3>
    <h4>h4. 6개의 헤드라인 중 4순위</h4>
    <h5>h5. 6개의 헤드라인 중 5순위</h5>
    <h6>h6. 6개의 헤드라인 중 6순위</h6>
    <br>
    <h1>단락</h1>
    <p>p태그는 단락을 정의하는 요소입니다.</p>
    <p>단락을 정의하는 p요소는 블록 요소이므로 줄 바꿈이 일어납니다.</p>
    <p>p요소는 텍스트와 <a href="">하이퍼링크</a> 등 인라인 요소를 포함할 수 있습니다.<br>단락 안에서 줄 바꿈을 실행하고 싶을 때는 행 바꿈 빈 요소인 br태그를 사용합니다.</p>
    <p>구분선을 그을때는 구분선 빈 요소인 hr태그를 사용합니다.</p>
    <hr>
    <br>
    <h1>문자</h1>
    <p>strong태그는 글자를 <strong>강조</strong>합니다. - 비슷한 태그 <b>b태그</b></p>
    <p>em태그는 글자에 <em>기울임</em>을 지정합니다. - 비슷한 태그 <i>i태그</i></p>
    <p>del태그는 글자를 <del>삭제하거나 부정</del>합니다.</p>
    <p>ins태그는 글자에 <ins>밑줄</ins>을 그어줍니다.</p>
    <p>sup태그는 <sup>윗첨자</sup>를 표현합니다.</p>
    <p>sub태그는 <sub>아랫첨자</sub>를 표현합니다.</p>
    <p>small태그는 <small>저작권</small>등을 표시할 때 사용합니다.</p>
</body>
</html>

헤드라인에 사용하는 제목 태그로는 "<h1>, <h2>, <h3>, <h4>, <h5>, <h6>" 총 6가지가 존재하는데, 번호가 커질수록 부제목으로 글씨크기가 점차적으로 작아집니다.

단락의 경우 <p> 태그를 사용하며, 구분선을 나타낼 때는 <hr> 태그를 사용합니다.

<hr> 태그의 경우 "<hr>, </hr>"과 같이 열고 닫는 짝이 없는 태그입니다.

<strong> 태그의 경우 글자를 강조할 때 사용합니다.

<em> 태그의 경우 글자를 기울일 때 사용합니다.

<del> 태그의 경우 글자를 삭제할 때 사용합니다.

<ins> 태그의 경우 글자에 밑줄을 표시할 때 사용합니다.

<sup> 태그의 경우 글자에 윗첨자를 표현합니다.

<sub> 태그의 경우 글자에 아랫첨자를 표현합니다.

<small> 태그의 경우 글자에 작은 글씨를 표시할 때 표현하는데, 주로 저작권을 표시할 때 사용됩니다.

 

4. 리스트

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>1_html_04_리스트</title>
</head>
<body>
    <h1>순차적 목록</h1>
    <h2>신입직원 채용절차</h2>
    <ol>
        <li>입사지원</li>
        <li>서류전형</li>
        <li>1차 면접</li>
        <li>적성검사</li>
        <li>최종 면접</li>
        <li>신체검사</li>
    </ol>
    <br>
    <h1>비순차적 목록</h1>
    <h2>웹사이트 구성</h2>
    <ul>
        <li>기업소개</li>
        <li>사업영역</li>
        <li>제품소개</li>
        <li>고객센터</li>
        <li>홍보자료실</li>
        <li>인재채용</li>
    </ul>
    <br>
    <h1>정의형 목록</h1>
    <dt>웹 표준</dt>
    <dd>HTML</dd>
    <dd>CSS</dd>
    <dd>Javascript</dd>
    <dd>jQuery</dd>
    <dt>디자인 구성요소</dt>
    <dd>스토리보드</dd>
    <dd>심미성 구성요소</dd>
    <br>
    <h1>2중 목록</h1>
    <p>상위 목록의 닫는 li태그 바로 앞에 목록을 삽입</p>
    <ul>
        <li>기업소개
            <ul>
                <li>연혁
                    <ol>
                        <li>2019년 성과</li>
                        <li>2020년 성과</li>
                    </ol>
                </li>
                <li>대표소개</li>
                <li>임직원 소개</li>
            </ul>
        </li>
        <li>사업영역</li>
        <li>제품소개</li>
        <li>고객센터</li>
        <li>홍보자료실</li>
        <li>인재채용</li>
    </ul>
</body>
</html>

리스트는 순차적, 비순차적, 정의형 목록으로 총 3가지가 존재합니다.

순차적의 경우 <ol>인 Order List로 순서가 존재하는 의미의 태그를 생성 후, <li>인 List 태그로 감싸줍니다.

비순차적의 경우 <ul>인 UnOrder List로 순서가 존재하지 않는 의미의 태그를 생성 후, <li>인 List태그로 감싸줍니다.

정의형의 경우 <dl>인 definition List로 용어를 설명하는 목록을 만든 후, <dt>인 definition Term으로 용어의 제목을 넣어준 뒤, <dd>인 Definition Description으로 용어를 설명해주는 태그로 감싸줍니다.

 

순차적 목록                          비순차적 목록                      정의형 목록                

<ol>                              <ul>                                <dl>설명하는 목록</dl>
     <li>목록1</li>                 <li>목록1</li>                 <dt>제목</dt>
     <li>목록2</li>                 <li>목록2</li>                   <dd>목록1</dd>    
     <li>목록3</li>                 <li>목록3</li>                   <dd>목록2</dd>
</ol>                             </ul>                                   <dd>목록3</dd>

 

5. 테이블(기본)

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>1_html_05-1_테이블(기본)</title>
</head>
<body>
    <h1>표 만들기</h1>
    <br>
    <h2>1행 1열 표 만들기</h2>
    <table border="1">
        <!--table은 표를 만드는 태그-->
        <!--border는 테두리 선-->
        <!--table의 크기는 내용의 크기에 따라 설정-->
        <!--표를 작성할 때에는 1.행을 만들고 그 안에 2.열을 만든다-->
        <tr>
            <!--tr은 행을 만드는 태그-->
            <td>1행 1열</td>
            <!--td는 행 안에 있는 열-->
        </tr>
    </table>
    <br>
    <h2>1행 2열 표 만들기</h2>
    <table border="1">
        <tr>
            <td>1행 1열</td>
            <td>1행 2열</td>
        </tr>
    </table>
    <br>
    <h2>2행 1열 표 만들기</h2>
    <table border="1">
        <tr>
            <td>1행 1열</td>
        </tr>
        <tr>
            <td>2행 1열</td>
        </tr>
    </table>
    <br>
    <h2>2행 2열 표 만들기</h2>
    <table border="1">
        <tr>
            <td>1행 1열</td>
            <td>1행 2열</td>
        </tr>
        <tr>
            <td>2행 1열</td>
            <td>2행 2열</td>
        </tr>
    </table>
    <br>
    <h2>3행 3열 표 만들기</h2>
    <table border="1">
        <tr>
            <td>1행 1열</td>
            <td>1행 2열</td>
            <td>1행 3열</td>
        </tr>
        <tr>
            <td>2행 1열</td>
            <td>2행 2열</td>
            <td>2행 3열</td>
        </tr>
        <tr>
            <td>3행 1열</td>
            <td>3행 2열</td>
            <td>3행 3열</td>
        </tr>
    </table>
    <br>
    <h2>3행 3열 표 만들기 - 병합</h2>
    <table border="1">
        <tr>
            <td colspan="2">1행 1열</td>
            <!--col(column)은 열, span은 병합-->
            <!--병합된 td는 삭제-->
            <td>1행 2열</td>
        </tr>
        <tr>
            <td>2행 1열</td>
            <td>2행 2열</td>
            <td rowspan="2">2행 3열</td>
            <!--row는 행, span은 병합-->
        </tr>
        <tr>
            <td>3행 1열</td>
            <td>3행 2열</td>
            <!--병합된 td는 삭제-->
        </tr>
    </table>
    <br>
    <h2>5행 5열 표 만들기</h2>
    <table border="1">
        <tr>
            <td>1행 1열</td>
            <td>1행 2열</td>
            <td>1행 3열</td>
            <td>1행 4열</td>
            <td rowspan="4">1행 5열</td>
        </tr>
        <tr>
            <td>2행 1열</td>
            <td>2행 2열</td>
            <td rowspan="3">2행 3열</td>
            <td>2행 4열</td>
        </tr>
        <tr>
            <td colspan="2">3행 1열</td>
            <td>3행 4열</td>
        </tr>
        <tr>
            <td>4행 1열</td>
            <td>4행 2열</td>
            <td>4행 4열</td>
        </tr>
        <tr>
            <td>5행 1열</td>
            <td>5행 2열</td>
            <td>5행 3열</td>
            <td>5행 4열</td>
            <td>5행 5열</td>
        </tr>
    </table>
</body>
</html>

테이블의 경우 상당히 자주 사용합니다 ( 게시판, 전송하는 형식 폼 등 )

<table> 태그로 표를 만들어주며, <tr>은 표의 행, <td>는 표의 열을 나타냅니다.

해당 코드에서 <table> 태그안에 border="1"이라는 옵션을 주었는데, 이는 표의 테두리를 표시해주기 위해 두께를 1px로 지정해준 것입니다.

 

6. 테이블(응용_td)

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>1_html_05-2_테이블(응용_td)</title>
</head>
<body>
    <h2>공연요금표</h2>
    <table border="1">
        <!--row(col * 3) * 7-->
        <tr>
            <td colspan="3">공연요금</td>
        </tr>
        <tr>
            <td>구분</td>
            <td>S석</td>
            <td>VIP</td>
        </tr>
        <tr>
            <td>성인</td>
            <td>40,000원</td>
            <td>60,000원</td>
        </tr>
        <tr>
            <td>청소년</td>
            <td>30,000</td>
            <td>50,000</td>
        </tr>
        <tr>
            <td>소인</td>
            <td colspan="2">미취학 아동 일반요금의 50%</td>
        </tr>
        <tr>
            <td rowspan="2">공연시간</td>
            <td>1회</td>
            <td>13:00~15:00</td>
        </tr>
        <tr>
            <td>2회</td>
            <td>17:00~19:00</td>
        </tr>
    </table>
</body>
</html>

다음은 기본 표에서 <td>라는 열을 나타내는 태그에서 "colspan, rowspan"으로 열과 행을 병합시켜주는 옵션을 추가하여 사용한 것입니다.

가로로 셀을 2칸 병합시켜주고 싶다면, rowspan="2"와 같이 지정해주며, 세로로 셀을 3칸 병합시켜주고 싶다면, colspan="3"을 지정해주시면 됩니다.

 

7. 테이블(응용_th)

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>1_html_05-3_테이블(응용_th)</title>
</head>
<body>
    <h2>공연요금표</h2>
    <table border="1" width="100%">
        <caption>공연요금표</caption>
        <!--caption은 table의 제목, table영역의 맨위에 입력-->
        <colgroup>
            <col width="20%" style="background-color: beige">
            <col width="50%">
            <col width="30%">
        </colgroup>
        <!--colgroup은 컬럼에 공통적인 설정을 하기 위한 그룹, 컬럼의 갯수만큼 col태그를 사용-->
        <tr>
            <th colspan="3">공연요금</th>
        </tr>
        <tr>
            <th>구분</th>
            <th>S석</th>
            <th>VIP</th>
        </tr>
        <tr>
            <th>성인</th>
            <td>40,000원</td>
            <td>60,000원</td>
        </tr>
        <tr>
            <th>청소년</th>
            <td>30,000</td>
            <td>50,000</td>
        </tr>
        <tr>
            <th>소인</th>
            <td colspan="2">미취학 아동 일반요금의 50%</td>
        </tr>
        <tr>
            <th rowspan="2">공연시간</th>
            <td>1회</td>
            <td>13:00~15:00</td>
        </tr>
        <tr>
            <td>2회</td>
            <td>17:00~19:00</td>
        </tr>
    </table>
</body>
</html>

다음으로는 <caption>이라는 태그가 먼저 등장하게 되는데, 이것은 해당 테이블에 대한 제목에 대한 이름을 정의할 때,<colgroup> 태그는 테이블에서 서식을 지정하기 위해, 하나 이상의 열을 그룹으로 묶을 때 사용합니다.

그리고 각 제목에 해당하는 부분의 셀에 대해서는 <td>대신에 <th>라는 제목을 나타내주는 태그를 사용합니다.

<th> 태그를 사용해주는 경우 자동으로 가운데 정렬 및 굵은 글씨로 표시하게 됩니다.

코드 상에 width의 경우 해당 브라우저에서의 가로 폭을 나타내는데, 100%로 할 경우 브라우저를 확대, 축소를 해도 꽉찬 크기로 나타내줍니다.

그리고 style="background-color: beige"의 경우 CSS를 통해 배경색을 지정해주는 문법으로 추후에 CSS 단원에서 배우게 됩니다.

 

 

반응형

'웹퍼블리싱 > HTML' 카테고리의 다른 글

HTML 학습2  (0) 2021.06.21