HTML

от Уикипедия, свободната енциклопедия
HTML
Информация
Файлово разширение.html
Тип MIMEtext/html
РазработчикMIT, W3C и други
Уебсайтhttps://www.w3.org/html/
HTML в Общомедия

HTML (съкращение от термина на английски: HyperText Markup Language, произнасяно най-често като „ейч-ти-ем-ел“, в превод „език за маркиране на хипертекст“) е основният маркиращ език за описание и дизайн на уеб страници. HTML е стандарт в интернет, а неговите стандарти се определят от международния консорциум W3C. Текущата версия на стандарта е HTML 5.0 (от 28 октомври 2014 г.), а предходната стабилна версия е HTML 4.1.

Описанието на документа става чрез специални елементи, наречени HTML елементи или техните маркери, които се състоят от тагове и съответстващите етикети (HTML tags) и ъглови скоби (като например елемента <html>). HTML елементите са основната градивна единица на кода, който изграждат уеб страниците. Чрез тях се форматира, графично оформя текста и неговите отделните части в рамките на една уеб страница, като например заглавия, цитати, текстови раздели, хипертекстови препратки и т.н. Най-често HTML елементите са групирани по двойки <h1> и </h1>.

В повечето случаи HTML кодът е написан в текстови редактори, с файлов формат .html, .htm, dhtml и се качва и хоства на сървъри, които са онлайн в интернет или са част от www мрежата. Тези .html файлове съдържат програмно на таговете на HTML и текстово съдържание със маркери и коментари – също инструкции за браузъра, за това какъв точно тип е .html страницата, а също за това как да се показва текстът, особено що се отнася до езиковите характеристики. За да се илюстрира как се включва текст в HTML код: <маркер> Някакъв текст. </край на маркера>. уеб браузърите са програмирани от своя страна така, в повечето случаи, макар че някои браузъри могат да имат съответно проблеми на версията, за да могат да прочетат HTML документите и да ги покажат на екрана като уеб страници. Браузърите не показват самите HTML тагове, освен ако не се отиде в менюто за да се направи това, така че те „интерпретират“ (тоест парсват) съдържанието на страницата като код и текст за да могат след работа на процесора да покажат желаното уеб съдържание.

Основното предимство на HTML е, че уеб страниците, които са го включват в кода си, могат да се разглеждат чрез показването им от браузъра на екрана на повечето устройства. Уебстраницата може да има дизайн, който дори изглежда с добър дизайн с помощта на CSS или „правилно оформен“ (например с помощта на C#), както върху монитора на персоналния компютър, но също и върху миниатюрния дисплей на пейджър или дисплея на мобилен телефон.

HTML може да прикрепя скриптове писани на езици като JavaScript, който е помощен за HTML, и това променя поведението на дадена уеб страница. Cascading Style Sheets (CSS) се използват, като това се прави за да се определя изгледа и оформлението на текста и други включени в страницата изображения и илюстриращи материали. World Wide Web Consortium (W3C) поддържа както HTML, така и CSS, и насърчава използването на CSS в HTML страниците още от 1997. Това допринася за разделяне съдържанието и структурата на уеб страниците от тяхното визуално представяне.

Общо представяне[редактиране | редактиране на кода]

Тим Бърнърс-Лий

Първото публично достъпно описание на HTML е документът „HTML тагове“, споменат за първи път в интернет от Тим Бърнърс-Лий в края на 1991 г., [4][5]. Той описва 18-те елемента, които съставляват оригиналния, сравнително прост HTML дизайн. С изключение на маркера за хипервръзка, те бяха силно повлияни от SGMLguid, вътрешен формат на документация, базиран на стандартния обобщен език за маркиране (SGML), в CERN. Единадесет от тези елементи все още съществуват в HTML 4[6].

Първоначално HTML езикът е замислен и създаден като средство за структуриране и форматиране на документи, без да ги обвързва със средствата за възпроизвеждане (показване). В идеалния случай, текст с маркиране на HTML трябва да е без стилистични и структурни изкривявания се играе на оборудване с различни технически оснащенностью (цветен екран модерен компютър, монохромен екран организатор, ограничен от размерите на екрана на мобилен телефон или устройство и програма за гласово възпроизвеждане на текстове). Съвременното приложение на HTML обаче е много далеч от първоначалната му задача. Например, тагът <table> е предназначен за създаване на таблици в документи, но понякога се използва и за проектиране на поставянето на елементи на страницата. С течение на времето основната идея на платформата за независимост на езика HTML беше жертвана на съвременните нужди от мултимедиен и графичен дизайн.

Първото публично достъпно описание на HTML е документ, наречен „HTML tags“, първо посочен в интернет от Тим Бърнърс-Лий в края на 1991 г. HTML е създаден като език за обмен на научна и техническа документация, подходящ за използване от хора, които не са специалисти в областта на оформлението. HTML успешно се справя, като подобрява работата на браузъра с кода, и прави визуализирането на страниците по-бързо, в сравнение със сложността на SGML чрез дефиниране на малък набор от структурни и семантични елементи – дескриптори. Дескрипторите също често се наричат „тагове“. Тим Бърнърс-Лий описва 18 елемента, включващи началната сравнително опростена конструкция на HTML. В допълнение към опростяването на структурата на документа, HTML има поддръжка за хипертекст.

HTML е език за хипертекстово маркиране, който уеб браузърите парсват („интерпретират“), за да покажат текст и съдържание на уебстраницата като изображения и други уеб приложения и материали. Оригиналните характеристики за HTML са част от парсинговите дефиниции и методи на браузъра, като за да се допълнят, техните характеристики могат да бъдат променяни (подобрявани) в самия код на страницата, на страницата на разработчика или локално на потребителския компютър, чрез поддръжка на локален код, тоест с допълнително включване на разширяващият възможностите на HTML – CSS (Cascading Style Sheets), които да подобрят начините за покзаване на текстовото съдържание. Голяма част от определящите текста елементи датират от 1988 ISO technical report TR 9537 Techniques for using SGML, които представляват характеристиките за тогавашните форматиращи езици, като такъв използван в TYPЕSET програмата за текстообработка от 1960-те, създадена за CTSS (Compatible Time-Sharing System) операционна система. Въпреки че, концепцията на SGML е също базирана на елементи (вложени анотирани обхвати с атрибути) и по-малко на принтиращи ефекти със структурно разделение, HTML e неговото подобрение, а CSS допълва HTML в способността на браузъра да дийсплейва съдържанието.

Internet Engineering Task Force (IETF) официално обявяват HTML като SGML базиран език през 1993 г. Като публикували първия план за HTML спецификация: „Hypertext Markup Language (HTML)“ Internet-Draft от Тим Бърнърс – Лий и Daniel Connolly който включвал и SGML Document Type Definition за да дефинира граматиката (синтаксиса) на езика.[1] По същия начин Dave Raggett създава Internet-Draft, „HTML+ (Hypertext Markup Format)“, в края на 1993, предлагайки стандарти за таблици и форми за попълване.[2]

През 1994 IETF създава работеща група по HTML която през 1995 завършва HTML 2.0 (първата спецификация за HTML, която трябва да се счита за постоянна и бъдещите спецификации да я надграждат).

От 1996 спецификациите се поддържат от World Wide Web Consortium (W3C).[3] През 2000, HTML е вече световен Интернет стандарт (ISO/IEC15445:2000), като в браузърите се ползват различни стандарти като HTML 3 и HTML 4.01, която версия е обявена през 1999.

Дълго този стандарт е толкова добре работещ, че не се разглежда необходимост от подобряването му, но междувременно Microsoft оттеглят работата си по flash, като Adobe продължават да го поддържат за уеб, Майкрософт пуска проприетарна версия на flash, която обаче не става популярна, въпреки качеството на графиката, и така след известни проблеми с flash-а, през 2012 се повдига въпроса за обновяване на стандарта, например с подобрения с видео-включването в страници.

Версии на HTML[редактиране | редактиране на кода]

24 ноември 1995 г. – HTML 2.0 е представен като RFC 1866. Впоследствие са добавени:

25 ноември 1995 г. – качване на файлове с формуляри;

Май 1996 г. – таблици;

Август 1996 г. – клиентски картови изображения;

През януари 1997 г. е представен HTML 3.2. Това е първата версия, разработена и стандартизирана от World Wide Web Consortium.

През декември 1997 г. е представен HTML 4.0, отново от W3C (World Wide Web Consortium) в три вариации:

  • Строг, отпадналите елементи са забранени
  • Междинен, отпадналите елементи са разрешени
  • Фреймов, най-често рамкови елементи са позволени

април 1998 г. – версия 4.0 претърпява леки промени, без смяна на номера;

декември 1999 г. – версия 4.01 е налице;

януари 2008 г. - версия 5.0, първо публично публикуване. От 2014-та става основен стандарт.

Алтернативни версии[редактиране | редактиране на кода]

Тъй като HTML се смята за донякъде отворен стандарт, макар и поддържан от W3C и Internet Engineering Task Force, той е направен така, че да работи като част от самия браузър, като част от инструкциите към браузъра и парсъра, а също така е такъв за разработчиците, които свободно могат да го използват за своите нужди, някои нови версии на HTML като HTML5 имат проприетарен подход, което спъва работата на разработчиците и блокира стандартизиращите проекти на W3C и Internet Engineering Task Force, както и други стандартизиращи организации.

януари 2008 г. – Трейдмарковия HTML5 на Apple е представен като работен проект от W3C;

май 2011 г. – версия 5 е в процес на развитие на техническите спецификации. Пълната спецификация се очаква до 2014 г.

октомври 2014 – HTML5 е публикувана като препоръка на W3C.

Представеният нов HTML, който също така има различно изписване от предните, има тенденции за трейдмарк, както и лого HTML5, според групата, работила по него започва още през 2004 от Web Hypertext Application Technology Working Group (WHATWG), а по-късно през 2008 W3C се включва за да одобри стандарта, с идеята, че той ще е еквивалентно добър на този от предните версии на HTML, и двете групи завършват стандарта на 28 октомври 2014.[4]

Все пак става дума за Apple стандарт, който максимално подобрява работата на Macintosh настолни компютри и тяхната синхронизация с мобилни устройства.

Създаване на HTML страници[редактиране | редактиране на кода]

Създаването на HTML базирана уеб страница може да се извърши с помощта на обикновен текстов редактор. Този начин изисква добро познаване на HTML тагове, така че те да бъдат в логическа последователност, и в тях да бъдат интегрирани текстовите сегменти, или текстът, който ще се показва на страницата. Също така често срещани са по-приятелски настроените инструменти, които не изискват от потребителя да пише ръчно HTML, макар и да притежава познания по HTML, което му позволява да създаде страница по метода WYSIWYG. Основен инструмент за тази цел Notepad, но за тази цел може да се използва дори текстообработваща програма Word, която разбира се позволява количеството html код да бъде умножено по експоненциала, но гарантира показването на един текст като уебстраница този път без каквито и да е познания в програмирането, парсинга и други подробности, тъй като код, създаден на Word позволява на браузъра да спре с часове, почти независимо от процесора.

Така че Word е програма, която позволява да запазите документ като HTML и да го редактирате като текст.

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

Такива са FrontPage, професионалният ASP.NET,

А също и Notepad++, Macromedia Dreamweaver, Sublime Text и други.

Примерен HTML код

<!DOCTYPE html>
<html>
  <head>
    <meta charset="windows-1251">
    <title>Заглавие на документа</title>
  </head>
  <body>
    <p>Здравей, свят!!</p>
    <p>Validate <a href="http://validator.w3.org/check/referer">XHTML Basic 1.0</a></p>
    <p>
      <a href="http://validator.w3.org/check?uri=referer"><img
          src="http://validator.w3.org/images/vxhtml-basic10"
          alt="Valid XHTML Basic 1.0!" height="31" width="88" /></a>
    </p>
  </body>
</html>

Структура, основни елементи на един HTML документ[редактиране | редактиране на кода]

HTML таговете са най-малката съставна част на един HTML документ.

Те, заедно със своите атрибути (като цвят, размер и т.н), съставят т.нар. HTML елементи.

Таговете са ключови думи, заградени в ъглови скоби. Обикновено са по двойки:

  • таг за начало – маркира началото на един HTML елемент;
  • таг за край – маркира края на HTML елемента. За разлика от началния таг, крайният има наклонена надясно черта пред името си:
<b> ... </b>

Таговете се влагат един в друг, като първия отворен таг се затваря последен.

Основни елементи[редактиране | редактиране на кода]

<html> елемент[редактиране | редактиране на кода]

Указва на браузъра, че това е HTML документ. Отбелязва началото и края на документа и съдържа всички други негови елементи (с изключение на <!DOCTYPE> елемента).

<html>
...
</html>

<head> елемент[редактиране | редактиране на кода]

Съдържа заглавието на документа, и може да съдържа стилове, скриптове, енкодинг и т.н.

<html>
<head>
<title>Заглавие на документа</title>
</head>
...
</html>

<body> елемент[редактиране | редактиране на кода]

Съдържа форматиране видимо за потребителя – текст, хиперлинк, картинки, таблици, бутони, параграфи и т.н.

<html>
<head>
<title>Заглавие на документа</title>
</head>
<body>
Съдържание на документа...
</body>
</html>

<!DOCTYPE> елемент[редактиране | редактиране на кода]

Декларира се първи, още преди <html> тага. Валидира документа. <!DOCTYPE> не е HTML таг. Той е инструкция за уеб браузъра – указва HTML версията, на която е написана страницата:

<!DOCTYPE HTML PUBLIC „-//W3C//DTD HTML 4.01//EN“ „http://www.w3.org/TR/html4/strict.dtd“>
<!DOCTYPE html>
<html>
<head>
<title>Заглавие на документа</title>
</head>
<body>
<h1>Моето първо заглавие.</h1>
Съдържание на документа......
</body>
</html>

Основни HTML тагове[редактиране | редактиране на кода]

<b> или <strong> таг[редактиране | редактиране на кода]

Удебелява текста.

 Това е нормален текст&nbsp;<b>а това е удебелен</b>.
Това е нормален текст – а това е удебелен.

<i> или <em> таг[редактиране | редактиране на кода]

Задава курсив/наклон на текста.

Той кръсти своята кола <i>Светкавицата</i>, защото беше много бърза.
Той кръсти своята кола Светкавицата, защото беше много бърза.

<u> таг[редактиране | редактиране на кода]

Подчертава текста.

Това е <u>подчертан текст</u>.
Това е подчертан текст.

<strong> таг[редактиране | редактиране на кода]

Указва важен текст.

<strong>Важен текст</strong>
Важен текст

<sub> таг [редактиране | редактиране на кода]

Дефинира текст под черта.

Текстът съдържа <sub>subscript</sub> текст.
Текстът съдържа subscript текст.

<sup> таг [редактиране | редактиране на кода]

Дефинира текст над черта.

Текстът съдържа <sup>superscript</sup> текст.
Текстът съдържа superscript текст.

<del> таг[редактиране | редактиране на кода]

Указва изтрит текст.

Моят любим цвят е <del>червен</del> син!
Моят любим цвят е червен син!

<br> таг[редактиране | редактиране на кода]

Указва нов ред. Няма таг за край.

Този текст съдържа <br> нов ред.

Този текст съдържа
нов ред.

<blockquote> таг[редактиране | редактиране на кода]

Указва част от текста, който е цитат.

<blockquote cite="http://www.worldwildlife.org/who/index.html">

Когато често се срещаме с дадени хора, те стават част от живота ни.

И като станат част от живота ни, започват да се опитват да го променят.

И се сърдят, когато не правим това, което те изискват от нас.

Понеже всеки си мисли, че знае как другият трябва да живее живота си, но всъщност никой не знае как трябва да живее своя собствен.

<mark> таг[редактиране | редактиране на кода]

За отбелязване на текст, като му се променя фона.

Този таг <mark>имитира истинските маркери</mark>.

Този таг имитира истинските маркери.

<a> таг[редактиране | редактиране на кода]

Указва линк към друга страница. Най-важният атрибут на този таг е href. Той посочва URL адреса, към който сочи линка:

<a href="https://bg.wikipedia.org">Уикипедия на Български</a>
Уикипедия на Български

<img> таг[редактиране | редактиране на кода]

Дефинира картинка в HTML страницата. Има два задължителни атрибута: src и alt. Атрибутът src указва URL адреса на картинката, alt – указва алтернативен текст на картинката, а hight и width – указват съответно височината и ширината на картинката в пиксели.

<img src="smiley.gif" alt="Smiley face" height="42" width="42">

Заглавия и Параграфи[редактиране | редактиране на кода]

Заглавия[редактиране | редактиране на кода]

Таговете от <h1> до <h6> дефинират заглавия в HTML документа. <h1> дефинира най-важното заглавие. <h6> дефинира най-маловажното заглавие.

<h1>Заглавие 1</h1>
<h2>Подзаглавие 2</h2>
<h3>Подзаглавие 3</h3>
<h4>Подзаглавие 4</h4>
<h5>Подзаглавие 5</h5>
<h6>Подзаглавие 6</h6>

Параграфи[редактиране | редактиране на кода]

Тагът <p> указва параграф. Браузърите автоматично добавят по един празен ред преди и след текста, маркиран като параграф.

<p>Това е параграф.</p>
<p>Това е друг параграф.</p>

Това е параграф.

Това е друг параграф.

Повечето браузъри показват параграфа коректно, дори да не е сложен тага за край.

<p>Това е параграф.
<p>Това е друг параграф.

Това е параграф.

Това е друг параграф.

За нов ред в самия параграф, без да се започва нов, се използва тагът <br>.

<p>Това е<br>пара<br>граф с нови редове.</p>

Това е
пара
граф с нови редове.

Списъци[редактиране | редактиране на кода]

Подредени списъци[редактиране | редактиране на кода]

Подредените списъци започват с тага <ol>, а всеки елемент на списъка – с тага <li>:

<ol>
<li>Биричка</li>
<li>Още една биричка</li>
</ol>
  1. Биричка
  2. Още една биричка


Атрибутът reversed указва, че подреждането ще е в низходящ ред, а присвоената му стойност – показва началото на номерацията:

<ol reversed>
  <li>Едно</li>
  <li>Две</li>
  <li>Три</li>
</ol>
 3. Едно
 2. Две
 1. Три


Атрибутът start задава началото на номерацията:

<ol start="4">
  <li>Едно</li>
  <li>Две</li>
  <li>Три</li>
</ol>
  1. Едно
  2. Две
  3. Три
<ol reversed start="5">
  <li>Едно</li>
  <li>Две</li>
  <li>Три</li>
</ol>
 5. Едно
 4. Две
 3. Три


Атрибутът type задава вида на маркерите (букви или цифри), например 1, a, A, i, I:

<ol type="I">
  <li>Едно</li>
  <li>Две</li>
  <li>Три</li>
</ol>
  1. Едно
  2. Две
  3. Три


Неподредени списъци[редактиране | редактиране на кода]

При тези списъци номерацията не е с цифри или букви, а с кръгли точки. Всеки списък започва с тага <ul>, а всеки елемент на списъка – с тага <li>:

<ul>
<li>Пържени картофки</li>
<li>Шкембе</li>
</ul>
  • Пържени картофки
  • Шкембе


Описателни списъци[редактиране | редактиране на кода]

Това са списъци от термини/имена с описание на всеки термин/име. Такъв списък се указва с тага <dl> в съчетание с таговете:

<dt> – за всеки термин/име
<dd> – за всяко описание на термина/името
<dl>
<dt>Биричка</dt>
<dd>- студена, животоспасяваща напитка</dd>
<dt>Шкембе</dt>
<dd>- освежаващо, сутрешно ястие</dd>
</dl>
Биричка
- студена, животоспасяваща напитка
Шкембе
- освежаващо, сутрешно ястие


Таблици[редактиране | редактиране на кода]

Дефинират се с тага <table>. Таблицата е разделена на редове, чрез тага <tr> („table row“), а всеки ред е разделен на клетки с данни (чрез тага <td>, „table data“). Всяка клетка може да съдържа текст, линкове, картинки, списъци, форми, други таблици и т.н. Атрибутът border задава рамка на таблицата.

<table border="1">
<tr>
<td>ред 1, колона 1</td>
<td>ред 1, колона 2</td>
<td>ред 1, колона 3</td>
</tr>
<tr>
<td>ред 2, колона 1</td>
<td>ред 2, колона 2</td>
<td>ред 2, колона 3</td>
</tr>
</table>
ред 1, колона 1 ред 1, колона 2 ред 1, колона 3
ред 2, колона 1 ред 2, колона 2 ред 2, колона 3


Заглавната информация в таблицата се указва чрез тага <th>. Текстът обикновено се показва удебелен и центриран:

<table border="1">
<tr>
<th>Колона 1</th>
<th>Колона 2</th>
<th>Колона 3</th>
</tr>
<tr>
<td>ред 1, колона 1</td>
<td>ред 1, колона 2</td>
<td>ред 1, колона 3</td>
</tr>
<tr>
<td>ред 2, колона 1</td>
<td>ред 2, колона 2</td>
<td>ред 2, колона 3</td>
</tr>
</table>
Колона 1 Колона 2 Колона 3
ред 1, колона 1 ред 1, колона 2 ред 1, колона 3
ред 2, колона 1 ред 2, колона 2 ред 2, колона 3


Атрибути[редактиране | редактиране на кода]

Повечето атрибути на елементи са двойки име – стойност, разделени със знак за равенство и записвани в рамките на отварящия таг след името на елемента. Името може да е с единични или двойни кавички. Оставянето на стойности на атрибути без кавички се смята за несигурно.

Има няколко често срещани атрибута, които може да се появят в много елементи:

 – Атрибутът id предоставя уникален идентификатор за елемента в документа. Използва се за идентифициране на елемента, така, че стиловете да могат да променят свойствата им.
 – Атрибут class е начин за класифициране на подобни елементи. Може да бъде използван за семантични или презентационни цели. Например, хипертекстов документ може семантично да използва обозначение class =”notation” за указване, че всички елементи от този клас са второстепенни спрямо главния текст в този документ. Множествени класови стойности също са позволени, като например class=”notation important”, който слага елемента в класа „notation“, а в същото време и в класа „important“.
 – Авторът може да използва атрибутът style за да задава презентационни свойства на определен елемент. Прието е за по-добра практика да се използва id или class атрибутите на елемента за избиране на елемент от каскадни стилове (виж CSS).
 – title атрибут се използва за прикачване на подтекстово обяснение на елемент. В повечето браузъри този атрибут се показва на екрана като съвет.
 – lang атритутът идентифицира естествения език на съдържанието в елемента, който може да бъде различен от този в останалата част на документа.
 – Атрибутът abbr може да се използва за да се демонстират показаните по-горе атрибути:
<abbr id="anId" class="jargon" style="color:purple;" title="Hypertext Markup Language">HTML</abbr>
 – Примерът, на повечето браузъри насочващ курсора към абревиатурата, трябва да покаже заглавието „Hypertext Markup Language
 – Повечето елементи приемат и атрибут dir, пряко свързан с посоката на изписване на думите в езиците, като например „rtl“ за right-to-left текст, като Арабски, Персийски и други.

Семантичен уеб[редактиране | редактиране на кода]

Семантичния уеб или HTML е начин на писане на хипертекстови документи, който подчертава значението на кодираната информация над неговия външен вид. HTML има добавено семантично маркиране още от самото си начало, но също са добавени презентационни маркировки като font, i и center таговете. Има също така семантично неутрални span и div тагове. От 1990 г., когато каскадните стилове CSS започват да работят в повечето браузъри, авторите на уеб съдържание са обнадеждени да избягват използването на презентационна хипертекстова маркиковка с оглед отделянето на презентацията, изгледа от съдържанието.

През 2001 г. на дискусия за семантичния уеб, Тим Бърнърс – Лий и други дават примери, в които интелигентни софтуерни агенти може би един ден автоматично ще пълзят в уеб и ще намират, филтрират и правят връзка с несвързани, публикувани факти в полза на потребителите. Такива агенти не са много често срещани, но примери за това може да са сайтовете за сравнение на цени.

Важен вид уеб агент, който пълзи и чете уеб страници автоматично без да знае преди това какво би могъл да намери, е така нареченият web crawler или паяк на търсачките. Тези софтуерни агенти са зависими от семантичната яснота на уеб страниците, които откриват, използвайки много различни техники и алгоритми да четат и индексират милиони уеб страници на ден и да предоставят на потребителите на уеб търсачки, без които използваемостта на интернет пространството би намаляла значително.

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

Презентационните маркировъчни тагове са отпаднали в текущата версия на HTML и XHTML и са забранени в HTML5.

HTML 5[редактиране | редактиране на кода]

HTML 5 е най-новият проект на HTML стандарта, като той все още е в процес на разработка. Той въвежда много нови свойства. Някои от тях са <video>, <audio>, <canvas>. Основната цел на тези подобрения е да се улесни употребата на мултимедийни и графични елементи, без да е необходимо да се ползват външни апликации. Други нововъведения, като <section>, <article>, <header>, <nav>, целят да обогатят съдържанията на документите. Някои от досегашните елементи, като <a> и <menu>, са променени и стандартизирани.

HTML 5 е поддържан от по-стари браузъри, тъй като е направен така, че новите му функции просто да се игнорират от тях.

HTML 5 бързо набира популярност и проучванията показват, че през есента на 2011 година над 30 от 100-те водещи сайтове вече ползват HTML 5, а през лятото на 2013 година 153 от водещите 500 компании вече са имплементирали HTML 5 в сайтовете си.

HTML редактори[редактиране | редактиране на кода]

Текстови редактори

Текстовите (сорсови) редактори, предназначени за употреба с HTML обикновено предоставят възможност за селектиране на синтаксиса. Шаблони, работни ленти и клавиатурни преки пътища често пъти могат да включват стандартни HTML елементи и структури.

Текстовите редактори обикновено включват или вградени функции, или интегрирани външни инструменти за цели като сорс контрол и контрол на версията, проверка на връзки, проверка и валидация на кодове, почистване и форматиране на кодове, ъплоуд чрез FTP или WebDav и проектово структуриране.

Текстовите редактори изискват потребителски познания в областта на HTML и други уеб технологии, които дизайнерът би искал да използва, като CSS, Java и сървърно-ориентирани езици. Тези редактори се наричат също така Прости HTML редакториA Simple HTML Editor Архив на оригинала от 2016-08-01 в Wayback Machine. (ASHE)).[5]

Някои обикновени HTML редактори като Windows Notepad могат да съхраняват HTML файлове като използват разширения като .html .htm .css и т.н.

Обектни редактори

Някои редактори позволяват алтернативно редактиране на сорсовия текст по по-визуално ориентирани способи отколкото обикновеното цветно селектиране с мишката, но не в WYSIWYG режим. Някои WYSIWYG редактори включват опцията да използват палитрени прозорци които позовляват да се редактират текстовите параметри на селектираните обекти. Тези палитри позволяват или редактирането на параметри в полета за всеки параметър, или текстови прозорци, чрез които се редактират пълни групи текст за селектирания обект. Те могат да включват механизми, които предоставят и селектират различни опции при редактирането на параметри. ADOBE Go Live разполага с контурен редактор, чрез който се създават разширяеми и падащи HTML обекти и свойства.

Amaya 10 HTML редактор

WYSIWYG HTML редактори

WYSIWYG HTML редакторите предоставят интерфейс за редакция който показва страницата такава, каквато ще бъде изобразена директно в браузъра. Тези едитори могат да бъдат както самостоятелни програми, като Adobe Dreamweaver или Microsoft Frontpage(вече неподдържана), така и под формата на добавки за браузъра, позволяващи директно редактиране. Стиловият енджин трябва да бъде достатъчно развит, за да позволява на разработчиците да пишат, пействат, трият и манипулират съдържанието. Целта е такава, че по всяко време на редактирането видимият резултат трябва да представлява това, което по-късно ще се вижда в стандартния уеб браузър.

WYSIWYM (каквото виждаш е каквото имаш предвид) е алтернативна парадигма на WYSIWYG редакторите. Вместо да се фокусират върху формата или презентацията на документа, тя запазва желаното значение на всеки елемент. Например хедърите на всяка страница, разделите, параграфите и т.н са наречени по същия начин в редактиращата програма и представени по съответния начин в браузъра.

Валиден HTML синтаксис[редактиране | редактиране на кода]

HTML е структуриран език с маркиращи елементи. Той притежава набор от правила, които трябва да бъдат спазвани при писане на документи, ако желаем той да издържи на W3C стандартите за World Wide Web. Тази практика спомага сайтовете да са достъпни за всички типове и модели компютри, както и за безжичните устройства като смартфони и персоналните дигитални асистенти (PDA). Последните са особено рискова група, заради техните ограничени скорости за предаване на информация и размер на екрани. За нещастие, повечето от HTML документите в интернет пространството не отговарят на зададените W3C стандарти. При проучване проведено през 2011 г. върху 350 от най-популярните уеб сайтове (оценени по индекса Alexa), цели 94% от тях се провалят на валидационния тест, или не изпращат правилна информация за Енкодинг на символите.[6] Дори и частта от тези, които са синтактично коректни, се оказват неефективни, поради множество повторения, или се уповават на правила, които са отхвърлени от години.

Текущите препоръки на W3C за употреба на CSS в HTML първоначално се формализират от консорциума през 1996 г.[7] и постоянно подлежат на изчистване и прецизиране. Вижте CSS, XHTML, текущите препоръки на W3C за CSS и текущите препоръки на W3C за HTML.

Тези насоки подчертават разделението на семантичното съдържание (HTML или XHTML) от дефинициите как да изглежда то (CSS). Предимството на което е, че намалява драстично повторенията в сайта цялостно. Понеже информацията за стиловете се изпраща веднъж, а не за страница по страница, а в още по-лошите случаи за всеки HTML елемент. Оттогава насам WYSIWSYG редакторите се опитват, с различна степен на успех, да приложат тази разделителна идея, без да трябва да разкриват подробно същината ѝ на крайните си потребители.

Независимо от това дали страницата е създадена или редактирана на ръка или от WYSIWYG програма, за да бъде успешна върху възможно най-голям брой четци и визуализатори, като в същото време запазва същината на 'worldwide' от уеб мрежата, първо и най-важно, документа трябва да съдържа правилни маркиращи елементи.[8] Не трябва да се счита за годен за World Wide Web, докато неговия HTML и CSS синтаксис не преминат успешно валидатор. За целта трябва, да се ползват официалните услуги на W3C (W3C HTML валидатор и W3C CSS валидатор) или алтернативи, на които може да се разчита.[8]

Достъпността на уеб страниците за хора с физически, зрителни или други увреждания, не само е добра идея, имайки предвид важността на мрежата в модерното общество, но също така се изисква от законодателните органи. В Щатите „Актът за американци с увреждания“ и във Великобритания „Актът против дискриминация на хората с увреждания“ налагат изисквания върху публичните сайтове. В много други страни подобни закони вече съществуват или са в процес на влизане в сила.[8] Създаването на достъпни уеб страници е по-сложно от това те да бъдат валидни. Валидността им със сигурност остава като предусловие, но има множество други фактори, които трябва да се разгледат.[9] Добрия уеб дизайн, независимо дали е подпомаган с WYSIWYG средство за разработка или не, трябва да съумее да ги спази.

Качеството на документ съдържащ HTML, най-пряко зависи от уменията на човека, който го създава и доста по-косвено на редактора, който ползва. Основно познание на HTML, CSS, скриптови езици и познание на актуалните препоръки на W3C за предходните, биха помогнали на един дизайнер далеч повече от, който и да е, WYSIWYG или подобен инструмент.[10]

Трудности при постигане на WYSIWYG[редактиране | редактиране на кода]

Почти всеки HTML документ ще има несъответстващ изглед върху различните устройства и компютри поради следните причини:

Различните браузъри и приложения ще изрисуват един и същ маркиращ текст по различен начин.
Една и съща страница може да изглежда почти по еднакъв начин на Internet Explorer и Firefox при екрани с висока резолюция, но да изглежда по радикално различен начин на напълно валидния Lynx браузър, който визуализира само текст. Документът ще бъде изрисуван по друг начин и на PDA, телевизор и мобилен телефон. Достъпността, осигурена от говорещи или брайлови браузъри или чрез екранни четци, съвместими с обикновени браузъри, ще създаде допълнителни изисквания върху други аспекти на основополагащия HTML. Отпечатването на страницата, през различни браузъри и различни принтери върху различни големини на печатната хартия в различните региони на света, поставя други изисквания. При правилна употреба на HTML и CSS вече няма нужда да се предоставят линкове за „Печатна версия на страницата“, вследствие от които ни се налага да поддържаме две версии на целия сайт.[11]
Браузърите и системите за компютърна графика имат набор от потребителски настройки
Разделителната способност, размера на шрифта, цветове, контраст и прочее – всички те могат да бъдат променени по желание на потребителя и много модерни браузъри позволяват още по-богат контрол над изгледа на страниците.[12] Всичко което авторът може да направи, е да предложи препоръка за настройките над изгледа.
Уеб браузърите, както всяка друга компютърна програма, имат бъгове
Освен бъговете, не всички съответстват с текущите стандарти. Безнадеждно е, да се опитва, да се създаде уеб страница заобикаляща проблемите във всички често срещани браузъри. В такъв случай всеки път, когато излезе нова версия на браузър, значителна част от световната мрежа следва да бъде пренаписана, за да удовлетвори новите бъгове и поправки. Затова е препоръчително, да се пише по установения стандарт, и да се избягват абсолютните новости в уеб технологиите, поне докато не е минало достатъчно време, за да се наложат.[13] Например никой не може да спори, че CSS все още е новост, защото е достатъчно разпространен и поддържан от браузърите.[14] Това, че WYSIWYG редакторите още не са достигнали зрялост с тази технология, не е показател.[15]
Единичен визуален стил може да има различни семантични значения
Семантичното значение, извлечено от основополагащата структура на HTML документа, е важно за търсачките и за набор от средствата за достъпност. По принцип можем да извлечем от контекста или от опит дали един почернен текст представлява заглавие, или ударение. Доста по-трудно е обаче да предадем тази разлика, когато ползваме WYSIWIG редактор, уповавайки се само на финалния изглед.

Това, което виждаме, може да е това, което много голяма част от посетителите получават, но не гарантира това което всички ще получат.

Източници[редактиране | редактиране на кода]

  Тази страница частично или изцяло представлява превод на страницата HTML в Уикипедия на английски. Оригиналният текст, както и този превод, са защитени от Лиценза „Криейтив Комънс – Признание – Споделяне на споделеното“, а за съдържание, създадено преди юни 2009 година – от Лиценза за свободна документация на ГНУ. Прегледайте историята на редакциите на оригиналната страница, както и на преводната страница, за да видите списъка на съавторите. ​

ВАЖНО: Този шаблон се отнася единствено до авторските права върху съдържанието на статията. Добавянето му не отменя изискването да се посочват конкретни източници на твърденията, които да бъдат благонадеждни.​

  1. Tim Berners-Lee. Re: SGML/HTML docs, X Browser (archived www-talk mailing list post) // 9 декември 1991. Посетен на 16 юни 2007. SGML is very general. HTML is a specific application of the SGML basic syntax applied to hypertext documents with simple structure.
  2. HTML+ Internet-Draft – Abstract // Архивиран от оригинала на 21 декември 2012. Browser writers are experimenting with extensions to HTML and it is now appropriate to draw these ideas together into a revised document format. The new format is designed to allow a gradual roll over from HTML, adding features like tables, captioned figures and fill-out forms for querying remote databases or mailing questionnaires.
  3. Raggett, Dave. Raggett on HTML 4. 1998. Посетен на 9 юли 2007.
  4. HTML5 – Hypertext Markup Language – 5.0 // Internet Engineering Task Force, 28 октомври 2014. Посетен на 25 ноември 2014. This document recommends HTML 5.0 after completion.
  5. Mintert, Stefan. Weberknechte – WWW Dokumente komfortabel erstellen // iX (magazine) (8). Heinz Heise, 1995. Посетен на 21 февруари 2011. (на немски)
  6. Responsive Web Design, Domain Registration, Web Hosting // Sikoswebconsulting.com. Архивиран от оригинала на 2018-10-22. Посетен на 23 октомври 2013.
  7. Cascading Style Sheets, level 1 // W3.org. Посетен на 23 октомври 2013.
  8. а б в Harold, Elliotte Rusty. Refactoring HTML. Boston, Addison Wesley, 2008. ISBN 978-0-321-50363-3.
  9. Web Content Accessibility Guidelines (WCAG) 2.0 // W3.org, 2008. Посетен на 23 октомври 2013.
  10. Dave Raggett's Introduction to HTML // W3.org, 24 май 2005. Посетен на 23 октомври 2013.
  11. Media types // W3.org. Посетен на 23 октомври 2013.
  12. Mozilla Support // Mozilla.org. Посетен на 23 октомври 2013.
  13. An essay on W3C's design principles // W3.org. Посетен на 23 октомври 2013.
  14. Cascading Style Sheets // W3.org. Посетен на 23 октомври 2013.
  15. Cascading Style Sheets // W3.org. Посетен на 23 октомври 2013.

Външни препратки[редактиране | редактиране на кода]

Свободен за дисплей в браузърите
Алтернативни версии