Notice: Undefined variable: this in /home/dimarini/public_html/libraries/src/Application/CMSApplication.php on line 441

XHTML - УВОД

Преди да се заемете с изучаването на XHTML трябва да притежавате основни познания по HTML и изграждането на уеб страници. XHTML е по-точна и чиста версия на HTML. В настоящото кратко ръководства ще разгледаме разликите между HTML и XHTML и употребата на остовните тагове. За да се научите как да направите сайт ще е необходимо да усвоите и XHTML.

XHTML означава EXtensible Hyper Text Markup Language и е почти еднакъв с HTML 4.01. XHTML е дефиниран HTML като XML (EXtensible Markup Language) приложение, който от 26 януари 2000 година е препъръчван от W3C (World Wide Web Consortium). XHTML е съвместим с всички уеб браузъри като съдържа всички елементи на HTML 4.01, съчетавайки точният синтаксис на XML. HTML е разработен за показване на данни, а XML за описание на данни. Затова, чрез комбинирането на силните страни на HTML и XML е получен маркиращ език XHTML, който се използва сега и ще се използва и в бъдещето.

Най-важните разлики са:

  • XHTML елементите трябва да са правилно вместени
  • При HTML някои елементи могат да бъдат неправилно вместени един в друг:

    <b><i>This text is bold and italic </b></i>

    При XHTML всички елементи трябва да са правилно вместени по реда на появяването им:

    <b><i>This text is bold and italic  </i></b>

  • XHTML елементите трябва винаги да завършват с затварящ таг
  • XHTML елементите трябва да са записани с малки букви
  • XHTML елементите трябва да имат само един основен (root) елемент
  • Всички XHTML елементи трябва да са вместени в основния елемент <html>.
    Вътрешните елементи трябва да са по двойки (отварящ и затварящ) правилно вместени в основния елемент:
    <html>
    <head> ... </head>
    <body> ... </body>
    </html>
  • Стойностите на атрибутите трябва да са в кавички:
  • <table width="100%">

  • Забранено е съкращаване на стойности на атрибутите
  •  Неправилно:
    <input checked>
    <input readonly>
    <input disabled>
    <option selected>
    <frame noresize>

    Правилно:
    <input checked="checked" />
    <input readonly="readonly" />
    <input disabled="disabled" />
    <option selected="selected" />
    <frame noresize="noresize" />

В XHTML празните тагове <hr>, <br> и <img> не са позволени и трябва да се заменят съответно с <hr />, <br /> и <img />. За да бъде XHTML съвместим със съвременните браузъри трябва да се добавя интервал преди символа “/”.

Задължителни елементи

Всеки XHTML документ трябва да има в началото декларация DOCTYPE, което не е част от документа и не е XHTML елемент. Също така, трябва да са представени елементите html, head, title и body

  По-долу е даден XHTML документ с минималния брой задължителни тагове:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html>
<head>
<title>Тук се записва заглавието</title>
</head>
<body>
Съдържание видимо в браузъра
</body>
</html>

DTD (Document Type Definition, определяне вида на документа) дефинира синтаксиса на дадена уеб страница в SGML (Standard Generalized Markup Language, стандартен обобщен маркиращ език). Използва се от приложения като HTML за да се определят правилата за даден документ, което включва и набор от елементи и декларации. DTD XHTML описва точно на компютърен език позволения в XHTML синтаксис.

Съществуват три вида за определяне на вида на документа в XHTML:

STRICT

Този DOCTYPE се използва когато се предпочита чисто маркиране заедно с CSS:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

TRANSITIONAL

Този DOCTYPE се използва когато е желателно да се използват описателните възможности на HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

FRAMESET

Този DOCTYPE се използва когато трябва да се използват рамките на HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

В XHTML се съдържа почти всичко необходимо за изграждане на уеб сайт. В някои случаи е твърде обемист и сложен, в други е твърде прост. Консорциума W3C е разделил XHTML на модули, с което създава добре дефинирани комплекти от елементи. Те могат да се използват отделно за малки проекти или съвместно с други XML стандарти при по-сложни приложения. С помощтта на модулите на XHTML проектантите могат:

  • да избират елементи, които да се поддържат от даден проект;
  • да опростяват XHTML за малки проекти;
  • да разширяват XHTML за по-сложни приложения като добавят XML функционалност [като MathML (Mathematical Markup Language – математически маркиращ език), SVG (Scalable Vector Graphics – векторни графики с мащабиране], глас и мултимедия;
  • да определят XHTML профили като XHTML Basic, което е комплект от XHTML за мобилни устройства;
  • Дефиницията на XHTML е разделена от W3C на 28 модула:

    Наименование на модулаОписание
    Applet Module Отхвърлени елементи
    Base Module Основни елементи
    Basic Forms Module Основни елементи за формите
    Basic Tables Module Основни елементи за таблиците
    Bi-directional Text Module Елемент bdo за двупосочно писане
    Client Image Map Module Маркиращи елементи на изображенията за браузъра
    Edit Module Редактиращи елементи del и ins
    Forms Module Всички елементи използвани в формите
    Frames Module Елементи на рамките
    Hypertext Module Елементът a
    Iframe Module Елементите iframe
    Image Module Елементът img
    Intrinsic Events Module Атрибути за събития
    Legacy Mode Отхвърлени елементи и атрибути
    Link Module Елемента link
    List Module Елементи на списъците
    Meta-information Module Елементи за мета информация
    Name Identification Module Отхвърлен атрибут name
    Object Module Елементи object и param
    Presentation Module Елементи за презентация
    Scripting Module Елементи script и noscript
    Server Image Map Module Маркиращи елементи на изображенията за сървъра
    Structure Module Елементи html, head, title и body
    Style Attribute Module Атрибут style
    Style Sheet Module Елемент style
    Tables Module Елементи, използвани в табилиците
    Target Module Атрибут target
    Text Module Текстов контейнер с елементи