Navigace

Hlavnφ menu

 

XHTML - povolenΘ obsahy element∙

Ji₧ jsme se probrali v podstat∞ vÜemi elementy striktnφho XHTML. Pon∞kud jsme ale p°i tom zanedbßvali obsah, kter² pro n∞ DTD povoluje. To v tomto Φlßnku napravφme.

Jak ji₧ z tohoto serißlu vφte, povolen² obsah element∙ je reprezentovßn v²Φtem element∙ (a sekce #PCDATA) spojen²ch urΦit²mi specißlnφmi znaky. Mnoho element∙ mß ale toto₧n² povolen² obsah, proto auto°i DTD XHTML vytvo°ili t°i parametrickΘ entity - %Flow;, %Inline; a %Block;.

Tyto parametrickΘ entity reprezentujφ nejΦast∞jÜφ povolenΘ obsahy element∙ a v pr∙b∞hu serißlu jsme se s nimi mnohokrßt setkali. Mnoho element∙ mß takΘ z t∞chto parametrick²ch entit sv∙j obsah odvozen - v∞tÜinou je zde o n∞jak² ten element vφc nebo mφ≥.

Nynφ si p°edstavφme tyto t°i nejΦast∞jÜφ entity - u ka₧dΘ z nich si zßrove≥ °ekneme, kterΘ elementy majφ z tΘto entity obsah odvozen. Ve vÜech p°φpadech se takΘ dozvφte, pro jakΘ elementy danß parametrickß entita definuje povolen² obsah.

Parametrickß entita %Flow;

Parametrickß entita %Flow; obsahuje text (#PCDATA) a tyto elementy:

  • odstavec (p),
  • nadpisy (h1, h2, h3, h4, h5 a h6),
  • kontejnery (div a span),
  • seznamy a v²Φty (ul, ol a dl),
  • blokovΘ sΘmantickΘ elementy (blockquote a address),
  • externφ objekty (object a img),
  • °ßdkovΘ sΘmantickΘ elementy (a, em, strong, dfn, code, q, samp, kbd, var, cite, abbr, acronym, sub a sup),
  • elementy formulß°∙ (form, fieldset, input, select, textarea, label a button),
  • a elementy table, map, noscript, ins, del, script, pre, hr a br.
VÜechny tyto elementy a text se mohou vyskytovat v libovolnΘm po°adφ a mno₧stvφ.

Jak vidφte, do entity %Flow; se °adφ tΘm∞° vÜechny elementy XHTML. Do element∙, kterΘ ji majφ nastavenou jako sv∙j povolen² obsah, proto m∙₧ete vno°it tΘm∞° vÜechno.

Entitu %Flow; majφ nastavenou jako sv∙j povolen² obsah elementy div, li, dd, ins a del.

Obsahy element∙ odvozenΘ z parametrickΘ entity %Flow;

Element object mß jako sv∙j povolen² obsah takΘ nastavenu entitu %Flow;, navφc se zde ale jeÜt∞ m∙₧e vyskytovat element param.

Element fieldset takΘ m∙₧e obsahovat elementy z %Flow;, navφc se zde ale m∙₧e vyskytovat element legend - ten se, pokud je p°itomen, musφ nachßzet hned na zaΦßtku obsahu elementu, nesmφ b²t p°edchßzen ₧ßdn²m textem ani jin²mi elementy.

Element button smφ obsahovat vÜechny elementy z %Flow; s v²jimkou a, form, input, select, textarea a button.

Parametrickß entita %Inline;

Parametrickß entita %Inline; obsahuje text (#PCDATA) a tyto elementy:

  • °ßdkov² kontejner span,
  • °ßdkovΘ sΘmantickΘ elementy (a, em, strong, dfn, code, q, samp, kbd, var, cite, abbr, acronym, sub a sup),
  • externφ objekty (object a img),
  • °ßdkovΘ elementy formulß°∙ (input, select, textarea, label a button),
  • a elementy map, ins, del, script a br.
VÜechny tyto elementy a text se mohou vyskytovat v libovolnΘm po°adφ a mno₧stvφ.

Entita %Inline; v sob∞ zahrnuje veÜker² °ßdkov² obsah - tedy text a °ßdkovΘ elementy (Φi elementy, kterΘ mohou b²t blokovΘ i °ßdkovΘ). Elementy, kterΘ majφ na tuto entitu sv∙j obsah nastaven, by m∞ly obsahovat pouze text a s nφm spojenΘ elementy (viz v²Üe) - nejsou urΦeny jako kontejnery pro dalÜφ prvky.

Na %Inline; majφ sv∙j obsah nastaven tyto elementy:

  • odstavec (p),
  • nadpisy (h1, h2, h3, h4, h5 a h6),
  • kontejner span,
  • °ßdkovΘ sΘmantickΘ elementy s v²jimkou a (em, strong, dfn, code, q, samp, kbd, var, cite, abbr, acronym, sub a sup),
  • a elementy dt, address, label, legend a caption.

Obsahy element∙ odvozenΘ z parametrickΘ entity %Inline;

Element pre mß nastaven sv∙j obsah na elementy z entity %Inline; s v²jimkou element∙ img a object.

Element a mß takΘ sv∙j obsah nastaven na %Inline;, v²jimku zde ale tvo°φ element a (odkazy nenφ mo₧nΘ vno°ovat).

Parametrickß entita %Block;

Parametrickß entita %Block; obsahuje pouze tyto elementy (ne text):

  • odstavec (p),
  • nadpisy (h1, h2, h3, h4, h5 a h6),
  • kontejner div,
  • seznamy a v²Φty (ul, ol a dl),
  • blokovΘ sΘmantickΘ elementy (blockquote a address),
  • blokovΘ formulß°ovΘ elementy (form a fieldset),
  • a elementy table, noscript, ins, del, script, pre a hr.
VÜechny tyto elementy se mohou vyskytovat v libovolnΘm po°adφ a mno₧stvφ.

Entita %Block; v sob∞ sdru₧uje blokovΘ elementy. Narozdφl od %Flow; a %Inline; ale neobsahuje text - ten do element∙, kterΘ na ni majφ nastaven povolen² obsah, p°φmo vklßdat nem∙₧ete.

Elementy, kterΘ majφ nastaven povolen² obsah na %Block;, jsou noscript, body a blockquote.

Obsahy element∙ odvozenΘ z parametrickΘ entity %Block;

Element map m∙₧e obsahovat bu∩ elementy z %Block; nebo elementy area.

Element form m∙₧e takΘ obsahovat elementy z %Block;, s jedinou v²jimkou - element form (formulß°e se nesmφ vno°ovat do sebe).

Zßv∞r

A tφmto Φlßnkem nßÜ serißl po vφce ne₧ roce konΦφ. Jeho Φtenφ vßs stßlo jist∞ mnoho ·silφ, ale pokud jste vydr₧eli a₧ sem, m∙₧ete si °φct, ₧e velmi dob°e ovlßdßte XHTML 1.0 Strict. P°eji vßm mnoho dob°e k≤dovan²ch strßnek.

Snφ₧ek, Martin (15.10. 2003)