본문 바로가기
HTML

[HTML] 정보로서의 html

by byeongoo 2019. 5. 8.

1. 글꼴 - font (퇴출)

font태그는 쓰지 말라고 알려드리는 태그입니다. font 태그가 퇴출됨으로써 html 정보로서 중요하다라는 이야기를 하고 싶습니다. 하지만 이미 많은 곳에서 쓰고 있는 태그입니다. Size 1~7까지 있고 기본 값은 3입니다. 그리고 color라는 속성을 통해 글자색을 지정할 있습니다.

 

여기서 생기는 문제는 font라는 것은 아무런 의미를 가지고 있지 않습니다. 시각적인 디자인일 뿐이지 Hello라는 정보에 대해서 어떠한 설명도 하지 않습니다. Html전체에서 디자인과 관련된 코드와 어떠한 의미를 가지고 있는(h1, li 등) 코드가 혼재되면서 페이지를 해석하기가, 정보로서 가지는 가치가 떨어지는 문제를 갖습니다.

 

문제를 해결하기 위해서 font태그를 퇴출시켰습니다. Html에서 css라는 별도의 프로그래밍 언어를 고안함으로써 언어가 디자인을 담당하게 하였습니다.

 

2. <meta> 태그

어떠한 데이터가 있으면 데이터를 설명하는 데이터를 meta 데이터라고 합니다. 예를 들면 html 있는 태그들은 태그가 감싸고 있는 콘텐츠를 설명한다는 점에서 메타 데이터라고 있습니다.

 

우리가 웹페이지를 만들면 웹페이지 전체를 설명하는 정보를 필요로하는 경우가 있습니다. 예를 들면 웹페이지의 제목이 무엇인가?, 저자는 누구인가?, 웹페이지는 어떠한 내용을 담고 있는가? 등등의 정보는 글의 본문에 표현되지는 않지만 상당히 중요한 정보입니다. 이때 사용하는 태그가 <meta>입니다.

 

<meta charset="utf-8">

우리가 작성한 파일의 내용을 utf-8이라는 방식으로 저장을 합니다. 그러면 브라우저가 정보를 읽어서 화면에 표시하려고하면 utf-8이라는 방식으로 읽어서 화면에 표시하려고 해야 보일 입니다. 문서는 utf-8으로 저장된 문서입니다 라고 표기를 해주면, 브라우저는 utf-8 의해서 해석해서 보여 주는 입니다. 이게 없다면, 기본적으로 브라우저에 설정되 있는 방식으로 읽게 되고, 그럴 경우 화면이 깨질 있습니다. 이런 정보들을 컴퓨터에 저장하는 것을 "인코딩"한다고 합니다. 그리고 저장된 정보를 꺼내서 화면에 표시하는 과정을 "디코딩"이라고 생각하면 됩니다.

 

<meta name="description" content="생활코딩의 소개자료">

정보는 웹페이지 상에서는 표시가 되지 않습니다. 하지만 자료는 웹페이지에 대한 요약된 정보로 사용 있습니다. 예를 들어 검색 엔진에서 검색을 했을 요약된 정보를 보여주는데 정보에 사용될 가능성이 상당히 높습니다.

 

<meta name="keywords" content="코딩, coding, 생활코딩, 프로그래밍, html, css, javascript">

키워드는 문서를 정의하는 중요한 단어들입니다. 페이지들을 설명하는 키워드들을 정의 입니다.

 

<meta name="author" content="egoing">

Author 저자를 뜻합니다.

 

<meta http-equiv="refresh" content="30">

자주 사용하지는 않지만 웹페이지는 30 간격으로 자동으로 refresh 됩니다.

 

이런식으로 meta라는 태그는 웹페이지의 내용은 아니지만 웹페이지를 설명하는 역할을 합니다. 이런 것들을 사용하면 가치있는 정보를 생산할 있습니다.

 

3. 의미론적 태그

Semantic 의미론적인 뜻입니다. 웹이 발전하는 과정에서 정보로서의 가치가 중요해지고, 사람에게도 의미있고, 기계들에게도 활용하기 좋은 형태의 데이터로 발전시키려는 노력들을 하였습니다. 과정에서 웹의 트렌드 하나가 semantic web이라는게 있습니다.

 

문서의 정보를 보다 잘 표현하기 위해서는 의미에 맞는 태그를 잘 사용해야 합니다. 특히 HTML5에서는 웹페이지에서 통상 많이 사용하는 구조에 의미를 분명히 부여하기 위해서 의미론적 태그(semantic element)를 새롭게 정의해서 제공하고 있습니다. 그 목록은 아래와 같습니다. 

semantic element

<h1>부분은 header 해당하는 부분입니다. 부분을 header 감싸줍니다. <header> 아무런 기능이 없습니다. 웹페이지 상에서 header 해당하는 중요한 부분이 바로 부분이다 라는 의미만 가지고 있는 태그입니다.

 

Header영역이 있다면 아주 많은 경우 footer 있습니다. 많은 사이트가 하단에 부가적인 정보를 가지고 있습니다. <footer> 추가해서 정보를 표시해주면 됩니다.

Html 코딩할때는 의미에 중심을 두어야합니다. 디자인은 css 통해 하면 됩니다.

 

웹페이지상의 ol 네비게이션의 역할을 합니다. <nav>라는 태그안에 넣어 주면 됩니다.

 

본문에 해당하는 부분은 <article> 사용하면 됩니다. 본문이 여러 나올 있으므로 <article>을 여러 사용하면 됩니다. 그리고 이것들을 <section>으로 묶어줍니다. Section 어떤 특정한 역할로 정의하기 애매한 것들은 section으로 묶어주면 됩니다.

<!DOCTYPE html>
<html>
<head>
<title>HTML - 수업소개</title>
<meta charset="utf-8">
</head>
<body>
<header>
    <h1><a href="index.html">HTML</a></h1>
</header>
<nav>
    <ol>
        <li><a href="1.html">기술소개</a></li>
        <li><a href="2.html">기본문법<a/></li>
        <li><a href="3.html">하이퍼텍스트와 속성</a></li>
        <li><a href="4.html">리스트와 태그의 중첩</a></li>
    </ol>
</nav>
<section>
    <article>
        <h2>선행학습</h2> 
        본 수업을 효과적으로 수행하기 위해서는 웹애플리케이션에 대한 전반적인 이해가 필요합니다. 이를 위해서 준비된 수업은 아래 링크를 통해서 접근하실 수 있습니다. 
    </article>
    <article>
        <h2>선행학습</h2> 
        본 수업을 효과적으로 수행하기 위해서는 웹애플리케이션에 대한 전반적인 이해가 필요합니다. 이를 위해서 준비된 수업은 아래 링크를 통해서 접근하실 수 있습니다. 
    </article>
</section>
<footer>
    <ul>
        <li><a href="privacy.html">개인보호정책</a></li>
        <li><a href="about.html">회사소개</a></li>
    </ul>
</footer>
</body>
</html>

실행 결과

 

'HTML' 카테고리의 다른 글

[HTML] 외부문서삽입(iframe)  (0) 2019.05.12
[HTML] View Port  (0) 2019.05.08
[HTML] <form> 태그  (0) 2019.05.08
[HTML] html table  (0) 2019.05.08
[HTML] html 태그(p, br, img)  (0) 2019.05.02