[참고 http://www.w3.org/TR/1999/REC-html401-19991224/sgml/loosedtd.html]

HTML has two basic content models:
        %inline;    character level elements and text strings
        %block;    block-like elements e.g. paragraphs and lists

<!ENTITY % block
        "P | %heading; | %list; | %preformatted; | DL | DIV | CENTER | NOSCRIPT | NOFRAMES | BLOCKQUOTE | FORM | ISINDEX | HR | TABLE | FIELDSET | ADDRESS">
<!ENTITY % heading "H1|H2|H3|H4|H5|H6">
<!ENTITY % list "UL | OLDIR | MENU">
<!ENTITY % preformatted "PRE">

<!ENTITY % inline
        "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;">
<!ELEMENT (SUB|SUP) - - (%inline;)*    -- subscript, superscript -->
<!ELEMENT SPAN - - (%inline;)*    -- generic language/style container -->
<!ELEMENT BDO - - (%inline;)*     -- I18N BiDi over-ride -->
<!ELEMENT BR - O EMPTY     -- forced line break -->
<!ENTITY % fontstyle "TT | I | B | BIG | SMALL">
<!ENTITY % phrase "EM | STRONG | DFN | CODESAMP | KBD | VAR | CITE | ABBR | ACRONYM" >
<!ENTITY % special "A | IMG | OBJECT | BR | SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO">
<!ENTITY % formctrl "INPUT | SELECT | TEXTAREA | LABEL | BUTTON">

- <body>, <blockquote> 엘리먼트 안에는 반드시 블록 엘리먼트만을 사용한다.
- 블록 엘리먼트들은 문단 엘리먼트 <p> 바깥에 두어야 한다.
- 인라인 엘리먼트는 <p>등의 블록 엘리먼트로 감싸 구성하며 독립적으로 사용하지 않는다.
- 인라인 엘리먼트 내부에는 블록 엘리먼트가 들어갈 수 없다.
- 리스트 엘리먼트 <ul>과 <ol>의 내부에는 오직 리스트 아이템 엘리먼트인 <li>만이 들어갈 수 있다.
- 정의 엘리먼트 <dl>의 내부에는 오직 <dt>와 <dd>만이 들어갈 수 있다.
- <li>, <dd>엘리먼트 안에는 텍스트, 인라인, 블록 엘리먼트 모두를 넣을 수 있다.
- button, map, object, iframe, applet!, ins, del 은 <span>의 자식도 될 수 있고, <div>의 부모도 될 수 있다고 한다.

'all' 카테고리의 다른 글

웹 표준 핵심 가이드  (0) 2011.10.25
xhtml / flash 바로 삽입 코드  (0) 2010.04.30
html markeup guideline  (0) 2010.03.19
frameset  (0) 2010.03.19
font, generic font families  (0) 2010.03.19

+ Recent posts