'W3C/HTML'에 해당하는 글 3건

Idempotent

W3C/HTML 2013. 3. 11. 21:40

Http Method의 GET과 POST를 보던 중 Idempotent 라는 단어가 있어서 짚고 넘어가 봅니다.

 

사전적 의미로 Idempotent 는 멱등(?) 이라는 이해할 수 없는 전문 용어를 뜻합니다.
하지만 멱등연산, 멱등행렬, 멱등법칙 등에서 xx=x, x∩x=x, x∪x=x 등의 연산을 보니 이해가 됐습니다.

 

 

예를 들어,
/index.php?para1=a&para2=b 라는 GET 페이지와 POST로 파라미터를 념겨받은 /index.php 페이지를 즐겨찾기를 합니다.
GET 페이지는 즐겨찾기 하기 전과 후의 페이지가 동일한 파라미터 전달로 계속해서 동일한 결과가 나타나겠지만,
POST 페이지는 즐겨찾기 한 후에 파라미터 누락으로 올바르지 않는 페이지가 표시되겠네요.

 

 

Http Method에서 Idempotent 란 용어는 이것을 구분하기 위해 넣은 속성입니다.
동일한 URL이 같은 결과물을 나타내는지(idempotent) 아닌지(non-idempotent).

 

GET : Idempotent
POST : non-Idempotent


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

html doctype

W3C/HTML 2013. 2. 4. 21:34

우리가 브라우저(i.e, chrome...)로 보는 웹페이지(html)는,
웹페이지에 정의된 DOCTYPE과 그에 해당하는 브라우저의 해석기로 렌더링 되어 보여집니다.
예를 들면 html 문서에서 doctype 을 xhtml1.0 transitional로 정의했으면
브라우저에서도 xhtml1.0 transitional로 모든 markup을 렌더링하여 보여줍니다.
만약 doctype 을 정의하지 않는다면, 브라우저 마다 내장된 호환모드(quirks mode)로 웹페이지를 해석하고,
제각기 화면들을 출력할 것입니다. 이러길 원하는 분은 없겠죠?
그래서 어느 브라우저든 동일한 화면이 보여지도록 하기 위해 웹페이지에 doctype 을 정의하고,
그에 맞는 markup 형식을 사용하도록 w3c 는 권고하고 있습니다.
이것이 바로 웹표준, 크로스 브라우징의 시작입니다.

 

다음은 (X)HTML DOCTYPE 리스트 입니다.

 

 HTML 4.01  Strict  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
 Transitional  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
 Frameset  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
   "http://www.w3.org/TR/html4/frameset.dtd">
 XHTML 1.0  Strict  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 Transitional  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 Frameset  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
 XHTML 1.1    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
   "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
 HTML 5    <!DOCTYPE html>

 

 

HTML4.01, XHTML1.0, HTML5 는 HTML 의 버전이라고 생각하면 될 듯 합니다.
버전을 선택했다면 어떤 DTD를 사용할 것인지 정의하고 그에 맞는 markup 을 사용합니다.
DTD는 Strict, Transitional, Frameset(Transitional+Frameset) 이 있으며 Strict 를 권장합니다.
Transitional는 DTD와 다르게 사용된 markup을 어느 정도 지원해 주지만,
Strict의 렌더링 속도가 더 빠르기 때문에 요즘 대세인 모바일웹에서는 의미가 있습니다.
HTML5는 아직까지는 표준이 아니며,
현재 대부분의 웹브라우저에서 가장 잘 표현이 되는 doctype 은 XHTML 1.0 Strict 입니다.


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

<meta> Header Element

W3C/HTML 2007. 10. 30. 02:08
Function
- 문서에 관한 추가적인 정보를 제공한다.

Attributes
- charset, content, dir, http_equiv, lang, name

End tag
- HTML 에는 없고, XHTML 에는 </meta> 또는 <meta... /> 를 사용


The name attribute

name 속성은 <meta> 태그에 name/value 의 이름으로 정의한다.
name 에는 일반적으로 문서에 대한 키워드를 정의하는 keywords 가 사용된다.
웹의 검색엔진에서 이 키워드들은 문서를 분류하는데 사용된다.

<meta name="keywords" content="kumquats, cooking, peeling, eating">


The content attribute

content 속성은 <meta> 태그에 name/value 의 이름으로 정의한다.
값은 스페이스를 포함한다면 따옴표로 둘러쌓여진 문자열이 될 수 있다.
예를 들어, 문서에서 저자의 이름을 쓴다면

<meta name="Authors" content="Chuck Musciano & Bill Kennedy">


The http-equiv attribute

http-equiv 속성은 <meta> 태그에 name/value 의 이름으로 정의한다.
문서를 전송하기 전 브라우저에 넘겨진 MIME 문서 헤더에 name/value 를 포함하도록 서버에 지시한다.

서버가 브라우저에 문서를 보낼 때, 먼저 name/value의 수를 보낸다.
어떤 서버들은 이 name/value의 수들를 보내는 반면에, 모든 서버들은 적어도 하나를 보낸다.

content-type: text/html

이것은 브라우저에게 HTML 문서를 받는다고 전하는 것이다.

pragma - HTTP/1.0에서 캐시를 제어하기 위해 사용된다. 값은 'no-cache'를 사용한다.
cache-control - HTTP/1.1에서 캐쉬 에이전트의 행동을 기술한다.
refresh - HTML 문서를 Reload 하는 시간을 기술한다. URL을 추가로 기술하여 다른 문서를 로드시킬 수 있다.

http-equiv 속성을 가진 <meta> 를 사용한다면, 서버는 브라우저에 보내는 컨텐츠 헤더에 여러분의 name/value 를 더할 것이다.

<meta http-equiv="charset" content="iso-8859-1">
<meta http-equiv="expires" content="31 Dec 99">

위 메타태그가 브라우저에 보내는 헤더를 나타낸다.
content-type: text/html
charset: iso-8859-1
expires: 31 Dec 99


The charset attribute

문서에 사용될 문자셋의 이름을 속성값에 지정한다.
문자셑을 정의하기 위해 항상 http-equivcontent 속성을 사용하기를 권한다.

WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,