Основы html для начинающих на понятном языке. Что такое язык HTML и для чего он нужен

08.07.2019

Основы html для начинающих, что сейчас должен знать каждый начинающий вебмастер или блогер. Если вы хотите научиться создавать элементарные сайты, понимать сам код, знать, что за чем стоит и должно идти, без знаний основ языка хтмл этого сделать просто невозможно. На своем блоге у меня будет целая цепочка статей, которые я посвящу этой теме от А до Я, опишу каждый тег, который присутствует в документе, что он обозначает и как его правильно использовать.

Основы хтмл

Если не знать самого элементарного, дальше вам путь закрыт. Я считаю, что каждый человек, который решил заниматься разработкой и созданием сайтов, должен знать и понимать основы, из чего состоит сам сайт, как он работает и что происходит в самом коде.

Языков программирования конечно не мало, все они по-своему сложные, но есть такие, которые нужно знать обязательно. Если вы хотите красиво оформить письмо для отправки по почте, у вас имеется своя группа Вконтакте, группа в других социальных сетях, тот же канал youtube, вам необходимо ковыряться в коде на любом из движков сайта, базовые понятия вы просто должны знать.

Навел только несколько примеров, на самом деле сейчас эти знания все чаще и чаще применяются в интернете. Я больше практик чем теоретик, поэтому в моих статьях в данной рубрике я буду показывать вам свои примеры, как и что я делал, step by step. Буду выкладывать как примеры страниц, так и целые сайты.

Html документ это самый простой текстовый документ, язык тегов, с которым вы сталкиваетесь каждый день на просторах интернета. Теги описывают структуру документа. Оформляются теги угловыми < >скобками, внутри которых пишется название тега. Браузер просматривает структуру документа, выстраивает ее и отображает уже по своим инструкциям на вашем мониторе, если вы конечно все сделали правильно.

Весь этот процесс начинается перед тем, как вы уже видите готовую картинку. Браузеры обрабатывают документ последовательно, от самого начала и до конца. Включая в себя полностью все, что должно быть на странице. Таблицы, картинки, скрипты и так далее, кроме это включая в себя стили CSS.

Основы для начинающих

Что такое html — если посмотреть, что пишет Википедия - (HyperText Markup Language)язык гипертекстовой разметки документов. Большинство страниц в интернете содержат разметку страницы на этом языке. Данный язык интерпретируется браузерами, полученный в результате форматированный текст отображается на вашем мониторе компьютера или мобильного устройства.

Данный язык по своей сути очень легкий и доступный в обучении. Выучить и понять его основы может каждый желающий человек. Для использования такого языка нужно знать и применять дескрипторы, которые еще называются тегами. Именно с помощью тегов и создается документ.

Из чего должна состоять структура документа, какие теги должны присутствовать. Давайте разберем все на одном маленьком примере. Я написал некоторый текст в MS Office и показал его вот на этом скриншоте.

Чтобы отобразить данный текст в браузере так же само, как он был написан в документе, для этого нужно к нему добавить разметку страницу, которая включает в себя некоторые теги. Для начала посмотрите на них, дальше я опишу каждый, кто за что отвечает.

Добро пожаловать на мой блог, сейчас вы проходите урок по Основам HTML. Если вам понравилась данная статья, можете подписаться на данный блог, чтоб получать новые статьи на свой электронный ящик.

Блог Евгения Несмелова! сайт Основы html и css для начинающих

Из каких тегов состоит любой html документ, что в него входит и где все это нужно прописать.

< html >

< body >

< h2 >< / h2 >

< p > Добропожаловатьнамойблог, сейчасвыпроходитеурокпоОсновамHTML . Есливампонравиласьданнаястатья, можетеподписатьсянаданныйблог, чтобполучатьновыестатьинасвойэлектронныйящик. < / p >

< h2 > БлогЕвгенияНесмелова! Nesmelov . ru Основыhtml иcss дляначинающих< / h2 >

< / body >

< / html >

Любой код состоит из символов, которые помещаются в угловые скобки. Все это называется элементами. Все элементы, как правило состоят из двух тегов, открывающего и закрывающего. Советую вам изначально внимательно смотреть за тегами, если вы пропустите один из них и не закроете его, вам нужно будет пересматривать большие части кода, чтоб найти ошибку.

Были случаи, когда на это уходил не один день, человек обращается и просит ему помочь, он не может найти у себя ошибку на сайте, поэтому всегда смотрите очень внимательно, что и где вы пишите. Давайте теперь на данном примере посмотрим на каждый элемент из кода, что в нем написано, что это означает и что получается в итоге.

Большинство тегов парные, которые включают в себя открывающийся тег и закрывающийся. Кроме таких тегов, существуют еще и одиночные теги. Теги могут идти вместе с другими, таким образом вкладываются друг в друга. Например отобразить текст сразу жирным и курсивом.

Текст

< strong > < i > Текст< / strong > < / i >

Структура html документа

Напомню еще раз раз, нужно следовать правилам, которые присутствуют в документе. Именно так браузер понимает что находится на странице, ее последовательность, содержание и так далее.

Тег — это компонент, который говорит веб браузеру выполнить ту или иную задачу. Например присутствие абзаца, таблицы, формы или изображения.

Атрибут — изменяет тег. Например можно абзац выровнять по центру или по правому краю, задать так же расположение изображения на странице и так далее.

ВСЕГДА закрывайте теги, если вы его отрыли, обязательно нужно его закрыть. В противном случае будет ошибка и ваш документ будет некорректно отображаться на странице. Так же существуют исключения, про них не следует забывать.

Четко нужно понимать, что существует заголовок документа и его тело. Заголовок это все, что состоит в теге . Тело документа (), в теле документа состоит все содержимое страницы. Если возникает необходимость оставить участок кода для себя, тем самым заключить данные теги в комментарии, для этого используется тег . Все, что находится внутри такого тега, служит в роли комментария и не воспринимается браузерами.

Начнем с самого первого. В начале документа я открыл тег и в конце я его закрыл . Данный код присутствует абсолютно в каждом документе, он говорит браузеру, что все, помещенное между этими тегами, является HTML кодом. Является корнем самого документа, все, что в дальнейшем присутствует за этим тегом, уже не включается в документ и не воспринимается браузерами. В самом начале документа тег открывается и в самом конце он обязательно должен быть закрытым.

Весь раздел этого тега содержит в себе всю техническую информацию документа. Как и предыдущий тег, head так же должен быть открыт и в конце закрыт. В такую информацию относится заголовок страницы, ее описание, ключевые слова для поисковых систем и кодировку. Про кодировку немного ниже.

Содержание

< head > Содержание< / head >

Данный тег включается в head, он должен быть написан внутри тега head. Данный тег title является обязательным и должен присутствовать в каждом html документе. В добавок к этому он отображается как заголовок окна браузера. Длинна такого заголовка не должна превышать 60 символов. В тексте такого заголовка должна содержаться максимально полная информация, которая характеризует содержание страницы.

Если вы написали в заголовке "Привет Мир", именно эта информация должна отображаться на странице и никакой другой. Не стоит обманывать людей и поисковые машины, они этого не любят, тем самым вы делаете хуже себе. Информация, которая содержится в этом теге, должна соответствовать содержанию вашей страницы.

После обязательного тега title, идет необязательный, но так же не мало важный тег meta. Данный тег является одинарным. С помощью данного тега задается описание для страницы (description) и ее ключевые слова (keywords).

Кроме этого, в теге meta могут содержаться данные про автора страницы и другие свойства метаданных. Можно запретить индексацию страницы в целом для поисковых машин. Поставить автоматическое обновление страницы через 20 секунд или через 5 секунд с последующим переходом на другую страницу.

< meta name = "robots" content = "index, follow" >

< meta http - equiv = "refresh" content = "20" >

< meta http - equiv = "refresh" content = "5; url=http://сайт/" >

Таких элементов meta может быть несколько, так как они могут нести абсолютно разную информацию. Остальные пользователи, когда открывают страницу в браузере, не видят все ваши описания, все это остается скрытым от глаз.

Тег style так же можно использовать для задания стилей на странице. Если вы используете много разных стилей css, в таком случае желательно задавать их в отдельном файле. Если нужно указать несколько из них, все это можно задать прямо в html документе.

.base { width: 100px; background-color: #000; height: 150px; color: #fff; }

< style type = "text/css" >

Base {

width : 100px ;

background - color : #000;

height : 150px ;

color : #fff;

Или добавить стили конкретно к одному тегу, для этого внутри самого тега нужно добавить элемент style. Данный тег нужно использовать внутри контейнера , который задает стили для страницы. Можно использовать несколько таких тегов, ошибкой это не будет.

Немного похожий с предыдущим тегом, с помощью тега link можно задать стили для документа, которые находятся в другом файле. Другими словами, можно подключить к существующему документу полную таблицу стилей css, которая состоит из множества свойств. Тем самым вы уменьшаете размер документа, который в итоге будет быстрее грузиться и открываться на компьютере или мобильном устройстве при слабой скорости интернета.

Подключать можно больше одного файла, тут ограничений нет. Закрывать такой тег не нужно. Если все сделать правильно, к вашему документу будут подгружаться конкретные стили из отдельного файла. Данный тег можно добавить в основы html и не забывать про его существование. В итоге получается такая картинка:

< link href = "css/style-lg.css" rel = "stylesheet" >

< link href = "css/style-md.css" rel = "stylesheet" >

< link href = "css/style-sm.css" rel = "stylesheet" >

С помощью тега script к документу можно подключить разные сценарии (скрипты). Присутствие закрывающего тега обязательно. Сам скрипт может располагаться в начале документа, внутри и в конце.

Говорит браузеру, что все помещенное между этими тегами, должно отобразиться в окне вашего браузера. Вот основные теги, которые могут присутствовать абсолютно в каждом документе. Тег body служит в качестве основного тела страницы, который включает в себя все ее содержимое. Данный тег желательно открывать и в конце документа не забыть закрывать.

Заголовки страницы h1 h2 h3

Поехали дальше, мы видим тег , который так же открывается и закрывается. Данный тег обозначает основной заголовок текста, в большинстве случаев под заголовком H1 идет название страницы. На самом деле данных заголовком всего шесть. . Их так же используют в SEO, но это уже немного другая тема. Я обязательно выделю для этого одну статью и дам подробное описание для них, подписывайтесь на обновления блога, чтоб ничего не пропустить.

Наличие таких заголовком в статье сыграет важную роль при продвижении страницы. Кроме этого, ихнее использование дает вам четкую структуру страницы, ее заголовок, подзаголовки, выделения, подпункты и так далее. Всегда пользуйтесь ними и применяйте на практике. На многих CMS, например таких как WordPress, при написании текста, можно заметить «заголовок 1», "заголовок 2", "заголовок 3" и так далее. Именно они и отвечают за h1, h2 и h3.

Если вы пишите основной текст с нового абзаца, вы пишите тег

В начале и закрываете его в конце

. Обозначение абзаца в html равносильно создание нового абзаца в документе MS Word. Больше ничего нового в документ я не добавлял. Но, это еще далеко не все, что должно присутствовать в html документе. Посмотрим на еще один пример, описание будет немного позже.

HTML документ

Этот текст будет полужирным, а этот - ещё и курсивным

< ! DOCTYPE html >

< html >

< head >

< meta http - equiv = "Content-Type" content = "text/html; charset=utf-8" / >

< title > HTML документ< / title >

< / head >

< body >

< p >

< b >

< / b >

< / p >

< / body >

< / html >

Основные элементы Head и Title

В каждом документе присутствует элемент head и Title. Первый из них , который идет сразу после первого тега . В данном теге идет вся информация о странице, в нем так же заключается элемент . Title –информация о заголовке странице, другими словами название страницы, ее имя. Именно в тайтл вы указываете правильное название страницы, по которому пользователь будет искать вас через поисковую систему, очень важный момент. Оба элемента должны быть открыты и так же закрыты. Закрывается каждый элемент знаком «/». В итоге получается вот такая картинка.

Заголовок& \Содержание страницы

< / html >

Как видите, ничего сложного нет. Перед вами самые основные теги, которые должны присутствовать в каждом html документа. Не забывайте закрывать каждый из них, иначе браузер не сможет воспринять полноценную картину кода. Это нужно знать и помнить всегда. Дальше вы уже начинаете вставлять текст, картинки, видео и так далее. Но это уже будет в других статьях.

Редактор Notepad++

Для работы с кодом используйте программку Notepad++. Она бесплатная, найти ее в интернете не составит труда. Очень удобная для восприятия любого кода, так же удобно показывается открывающийся тег и закрывающийся. Поддерживаем синтаксис более 40 языков программирования. Как раз то, что нужно для изучения основ html.

Notepad превышает во всех смыслах обычный блокнот. Для максимального удобства, простоты и учебы данный редактор изначально необходимо установить на компьютер. Самое основное преимущество и удобство, редактор Notepad++ показывает подсказки при написании кода, что делает вашу работу быстрее и качественней в разы.

Элемент DOCTYPE

В каждом документе так же должен быть указан вот такой элемента doctype. Для чего он нужен и что в нем должно быть. Обычно народ сильно не увлекается этими строчками, копируют себе в документы и работают спокойно. Данные элементы говорят браузеру, какая версия html используется в документе, какое описание страницы, какая используется кодировка, какие ключевые слова включены, кто автор и как называется страница.

Ставятся они обычно в самом начале. Существует несколько вариантов и все они отличаются друг от друга, я напишу один пример, который используется чаще всего. Данную заготовку можно использовать как готовый шаблон. Далее будет понятное описание каждой строчки, проблем с этим быть не должно.

Коротко на понятном языке про основы html: Данная строчка говорит браузеру о том, что данный документ является XHTML версия 1.0, используется английский язык и вся эта каша расположена по данному адресу. Далее в теге meta указываем кодировку, которая используется. Чаще всего используется виндовс 1251.

Description — затрагивается тема по SEO, один из трех главных тегов, который должен присутствовать абсолютно в каждом документе, данный тег указывает описание страницы. Что написано на этой странице, короткое описание, не больше двух предложений. Тег keywords, так же затрагивается тема по SEO, данный тег является обязательным. В нем пишутся ключевые слова, по которым пользователи интернета будут находить вас через поисковые системы.

В теге title идет название самого документа, его заголовок, который мы видим в браузере. Наверное самый важный тег во всем документе, который больше всего влияет на продвижение страницы. В статье по добавлению и оформлению идет описание данного тега более детально.

Что необходимо запомнить с данного урока про основы html:

  • Почти все теги открываются и закрываются;
  • Начинается документ с тега ;
  • Наличие тега ;
  • Наличие тега ;
  • Четкая структура html документа.
  • Все главные страницы всегда должны называться словом index . Так принято и так все привыкли, без разницы какое будет расширение у файла, это может быть и html и php. Называется он всегда только так.

    Посмотрите видео про основы html от компании Webformyself.

    Язык гипертекстовой разметки, базовые элементы и структура. Все это и многое другое я постараюсь описать на своем блоге. В первую очередь для новичков будет написана полезная информация, предоставлен пример кода и возможность скачать сам пример вместе с готовой страницей.

    Начну, пожалуй, с начала..

    HTML язык по своей сути не является языком программирования.. он является языком разметки гипертекстовых документов. Иными словами он отвечает за расположение в документе Ваших текстов, рисунков, таблиц.. предназначенных для жизни в сети Интернет. Заставить его посчитать, сколько будет дважды два невозможно, в нем нет логических функций, зато красиво и главное легко выложить информацию о том, что дважды два будет четыре - это запросто. Читается этот язык при помощи знакомых Вам программ, именуемых браузерами (обозревателями), которые "знают" стандартные команды html языка, и "пережевывая" их выводят на монитор компьютера документы в том виде, в котором хочет представить их веб мастер - составитель документа.

    Теперь о командах - их называют дескрипторами, но чаще - тегами.

    Вернемся к нашей первой страничке.. итак мы написали:



    Моя первая страничка


    Привет мир!!!


    Так вот то что написано между - называют тегами они не видны читателю, заглянувшему на Вашу страницу, зато хорошо видны браузеру, который наткнувшись на тег понимает его как сигнал к тому, что далее будет документ, который необходимо прочитать и вывести на монитор в нужном виде.. а вот тег говорит о том что документ закончился и от него, то бишь браузера, больше ничего не требуется и он может отдыхать с чистой совестью.

    Так что же мы написали? и как это читает браузер?

    Мысли браузера:

    - начало документа.. опять работы привалило..
    - смотрим словарик английского переводим "голова" …в голове моей опилки не беда!! ... здесь указывается основная служебная информация о документе.. ну и что они там от меня хотят?
    - "название" значит.. это в шапке окна нужно написать его название:
    Моя первая страничка - опять чайник тренируется..
    - все название закончилось.. можно идти дальше..
    - ага и в голове кроме названия больше никаких вздорных мыслей не держим..
    - "тело" документа всё что написано ниже выставляем на всеобщее обозрение
    Привет мир!!! - как мило! Достали уже!!!

    - переносим текст на следующую строчку.. я даже догадываюсь что в ней будет...
    Меня зовут (здесь Ваше имя), это моя первая страничка! - ну да так и есть.. ничего пооригинальнее придумать не могут..
    - что всё что ли? Больше ничего не отображать?
    - ну вот и конец!! Не будить, не кантовать, при пожаре выносить первым!!

    Вот так примерно и происходит чтение нашей странички.. Как видите браузер довольно своенравный тип, поэтому команды ему нужно подавать чёткие и ясные, иначе он разругается.. причем в слух.. а по сему запомним следующие вещи:

    1) Необходимо раз и навсегда запомнить что если есть открывающий тег то обязательно должен быть и закрывающий

    Хотя есть и исключения как например у нас тег
    - он закрытия не требует потому что говорит лишь о том, что следует писать с новой строки. Кстати попробуйте добавить еще пару тройку таких же перед строчкой "Меня зовут.." и Вы увидите, что в результате она заметно опустилась вниз.. (Ну естественно в блокноте сохраните изменения, а в браузере нажмите кнопку "обновить")

    2) Все документы должны иметь вот такой шаблон кода:

    - начало документа
    - начало головы
    - закрытие головы
    - начало тела
    - закрытие тела
    - конец документа

    Данные теги являются обязательными! Писать их необходимо всегда для каждой новой странички, и только в таком порядке! Не пытайтесь перевернуть всё с ног на голову..

    3) О порядке:

    Открывающий и закрывающий тег по типу представляет собой своего рода ёмкость, ящик в который могут складываться другие теги - ящички поменьше.. следовательно, согласно логики документ должен выглядеть так:




    содержание


    Если писать, например, так:




    содержание



    То получится белиберда, которая в голове не укладывается, "большой" уже закрыт, а из него "торчит" "маленький", который заперт в "среднем", а "содержание" рассыпалось везде.. Такое даже человеку трудно представить, что уж там про браузер говорить.. Чётко структурируйте код Вашей странички иначе ничего работать не будет..

    Ну вот мы научились писать простой текст, начало положено! в следующей главе я расскажу о том, что с ним можно сделать..

      При написании сайта создайте папку в любом удобном месте на Вашем жёстком диске, называйте как угодно, лишь бы понятно было.. в эту папку сохраняете Ваши странички, присваивая им осмысленные имена.. варианты типа ааа.html, 123.html приведут к беспорядку и путанице… На данном этапе этот совет не покажется дельным, но в дальнейшем это значительно облегчит Ваш труд. Представьте к примеру хотя бы 20-30 таких файлов названия которых нужно держать в голове, чтобы связать их перекрёстными ссылками. Порядок, прежде всего!

      При написании кода советую придерживаться "хорошей манере письма", то есть писать теги "лесенкой" по мере вложенности одного тега в другой. Со временем Вы поймёте что читать код написанный вот так:



      Моя первая страничка


      Привет мир!!!

      Меня зовут Карлсон, это моя первая страничка!

      Значительно легче, чем так:



      Моя первая страничка


      Привет мир!!!

      Меня зовут Карлсон, это моя первая страничка!

      И уж тем более чем вот так:

      Моя первая страничкаПривет мир!!!
      Меня зовут Карлсон, это моя первая страничка!

      Хоть это и дело привычки.. всё же лучше привыкнуть писать "разборчиво".

    В 1989 году Тим Бернерс-Ли, сотрудник центра высоких технологий (CERN), предложил проект распределенной гипертекстовой системы под названием WWW (World Wide Web). Гипертекст - это текст, «который разветвляется сам по себе или выполняет действия по запросу». Изначально проект задумывался для того, чтобы объединить все информационные ресурсы CERN в единую распределенную систему гиперссылок, но данная технология, оказалась настолько перспективной, что впоследствии, благодаря простоте и использованием уже известных на тот момент сетевых протоколов (TCP и IP), ляжет в основу известной на егодняшний день Всемирной паутине.

    World Wide Web - первая успешно реализованная сетевая технология, удобство применения привели к росту числа пользователей WWW и привлекли внимание коммерческих компаний, благодаря чему количество пользователей увеличивается геометрически и по сей день.

    Одним из основных составляющих World Wide Web стал язык гипертекстовой разметки HTML , разработанный Тимом Бернерсом-Ли на основе стандарта языка разметки печатных документов -- SGML (Standard Generalised Markup Language, стандартный обобщенный язык разметки ).

    Благодаря созданию HTML были решены две задачи: дизайнеры гипертекстовых баз получили очень удобный инструмент для создания гипертекстовых документов; этот инструмент получился достаточно мощным, чтобы отразить имевшиеся на тот момент представления об интерфейсе пользователя гипертекстовых баз данных.

    Первая задача была решена за счет выбора теговой модели(см. главу 2) описания документа. Такая модель широко применяется в системах подготовки документов для печати.

    Для реализации HTML документов был выбран текстовый файл, так как помимо существования стандарта Z39.50 (который подразумевал простой текстовый файл, соответствующий кодировке US ASCII, как единицу хранения), создание и редактирование такого файла возможно в любом текстовом редакторе.

    По сути - гипертекстовая БД в рамках WWW представляет из себя совокупность написанных при помощи HTML текстовых файлов, которые так же включают в себя систему связей между собой и внешними информационными ресурсами (гиперссылки), которые, в последствии объединили множество различных информационных и развлекательных ресурсов. В последствии, когда гиперссылки стали объединять не только текст, но и аудио и видео возникло понятие гипермедиа.

    HTML 1.0 предназначался скорее для презентации самого языка. HTML 2.0 уже определял четкую архитектуру документов. HTML++ предоставил больше возможностей для составления научных статей и формирования таблиц. HTML 3.2 собрал воедино нововведения и наработки предыдущих версий, позволил выполнять на странице написанный на Java код. В HTML 4.01 . расширены возможности работы с мультимедиа, была введена интеграция с таблицами стилей CSS, языкиами программирования JavaScript и VBScript.

    Но в 1998 году язык HTML был признан устаревшим (по сравнению с XML) и W3C решили заморозить язык разметки на версии 4.01. Затем был разработан язык XHTML, сочетающий в себе структуру HTML и синтаксис XML. Были разработаны два стандарта XHTML Transitional и XHTML Strict Первый был разработан для упрощения перехода на устоявшийся стандарт XHTML strict. Затем началась работа над XHTML 2.0. При разработке данного стандарта была совершена попытка улучшить логику писания разметки.

    Но команда энтузиастов из компании Opera считали, что XML (а так же XHTML 2.0) не является достойным стандартом языка разметки. Они запустили проект по разработке экспериментального стандарта, добавив расширения для форм HTML, сохраняя при этом обратную совместимость. В результате получился стандарт Web forms 2.0, который в дальнейшем вошел в состав HTML5. После присоединения к команде разработчиков сотрудников из Mozilla они продолжили работу над проектом назвав себя WHATWG (Web Hypertext Application Technology Working Group, «рабочая группа по разработке гипертекстовых приложений для Интернета» -- http://www. whatwg.org). Код данного проекта является открытым и каждый может предложить любые изменения и нововведения в спецификацию. В последствии W3C признала, что попытка перевести весь мир на XML оказалась провальной и проголосовала за использование разработки от WHATWG в качестве основной, обновленной версии HTML, и так начался процесс работы над HTML5 аналог которой параллельно разрабатывала W3C и WHATWG. В 2009 году W3C направила все доступные средства на разработку HTML5.

    • Перевод

    Примечание: это не полный перевод статьи. Я выбрал только самые интересные лично для себя пункты. Статья не претендует на свежесть, но возможно даже люди хорошо знакомые с версткой найдут для себя что-то интересное. Статья затрагивает некоторые аспекты семантики верстки с конкретными примерами.

    Под катом много букв! Чтоб не потеряться в их обилии все пункты выделены заголовками.

    2. Какие версии HTML существуют? Первая версия HTML (1989) не имела номера версии; это был просто «HTML». Первая стандартизированная версия HTML, выпущенная Internet Engineering Task Force (IETF) в 1995, называлась HTML 2.0.7. Какая разница между Strict, Transitional и Frameset DTD"шками? Разница между этими DTD в том, какие элементы и атрибуты они декларируют и в том, каким образом они позволяют (обязывают) соблюдать вложенность элементов.
    • HTML 4.01 Strict DTD - делает ударение на разделении содержимого от презентации и поведения. Эту DTD W3C рекомендует для всех новых документов.
    • HTML 4.01 Transitional DTD - является неким промежуточным звеном при переходе от «старой» (old-scool"ьной, доHTMLьной) разметки к современной. Не рекомендуется использовать при написании новых документов. Содержит 11 презентационных элементов (прим. переводчика: не несущих смысловой нагрузки, а используемых исключительно для изменения внешниго вида; например элемент ) и полный набор презентационных атрибутов, которые отменены в Strict DTD. Transitional DTD часто необходима для страниц располагающихся внутри фреймов, т.к. она имеет атрибут target , необходимый для открытия ссылки в другом фрейме.
    • HTML 4.01 Frameset DTD - используется для страниц на основе фреймов. Консорциум W3 не рекомендует использовать фреймы. Для современных сайтов более удачным решением будет использование приложений на стороне сервера для решения подобных задач.
    8. Какой DOCTYPE выбрать? Если мы создаем новую страницу, W3C рекомендует использовать HTML 4.01 Strict (прим. переводчика: конечно, всем известно, что всё-таки лучше использовать XHTML 1.0 Strict) .

    Если мы собираемся переводить старые HTML 2.0 или HTML 3.2 документы, то пока мы не перевели всю презентацию в CSS, а элементы, отвечающие за поведение в JavaScript, мы можем использовать HTML 4.01 Transitional.

    11. Почему валидатор ругается на тэг ? никогда не был частью HTML спецификации. Это не стандартизированный элемент, который хотя и поддерживается большинством браузеров, но не является частью HTML.

    На протяжении «войны браузеров» в конце 90-х, такие производители браузеров как Microsoft и Netscape соревновались, кто больше придумает «крутых» фич для стилизации и оформления HTML страниц. Проблема была в том, что эти фичи не были стандартизированными и, в большинстве случаев, были не кроссбраузерными.

    Есть и другие элементы, которые достаточно широко использовались (например, marquee ), но никогда не были включены в спецификацию. По возможности никогда их не используйте.

    Также были широко распространены нестандартизированные атрибуты. Один из примеров - marginwidth .

    13. Что такое BOM?BOM , или byte order mark (отметка последовательности байтов) - используется в некоторых кодировках, которые используют больше 8-ми бит для кодирования данных (например, UTF-8 или UTF-16). Процессор умеет использовать две разные схемы хранения больших целых чисел: «big-endian» (тупоконечная) и «little-endian» (остроконечная). BOM содержит 16 бит, записанных в самом начале файла, которые указывают браузерам, какая схема используется.

    К сожалению многие старые браузеры не могут обработать эту информацию, вместо этого они отображают эти биты как символьные данные. Если вы видите несколько странных символов вверху страницы, то это вероятнее всего означает, что BOM не был обработан браузером (или не верно была установлена кодировка).

    Единственное решение проблемы - не использовать BOM. Редакторы, которые умеют сохранять документ в UTF-8 обычно позволяют выбрать, использовать или не использовать BOM.

    14. Какую кодировку использовать?Прим. переводчика: переводить этот пункт не стал; думаю, всем известно, что UTF-8 - это наше всё. Следует использовать UTF-8 . А при сохранении документа выбирать UTF-8 without BOM . 16. Почему нужно писать & amp; вместо &?Прим.: HTML-последовательности у меня написаны с пробелом после амперсанда, потому что в противном случае парсер Хабра их отображает не так как надо.

    Некоторые символы имеют особое значение в HTML: < (меньше), > (больше), & (амперсанд), " (кавычки), " (апостроф). Иногда, когда мы хотим использовать эти значки в обычном тексте, мы должны заменять их HTML-последовательностями.

    Для первых четырех указанных выше знаков последовательности будут выглядеть так:

    • & lt; (меньше)
    • & gt; (больше)
    • & amp; (амперсанд)
    • & (кавычки)
    XML определяет HTML-последовательность для апострофа (& apos; ), но HTML не включает в себя эту последовательность. Апостроф может быть заменен только цифровой последовательностью (& #39; ). Прим. переводчика: ради интереса провел маленький эксперимент. На практике последовательность & apos; в апостроф интерпретируют все браузеры (FF3, Opera 9, Safari 3, Google Chrome) кроме IE (все версии).

    Т.к. амперсанд используется во всех этих последовательностях, он всегда должен быть преобразован в HTML-последовательность, включая случаи, когда он используется внутри атрибутов, в частности в атрибуте href в ссылках. К сожалению амперсанд очень часто встречается в URI в качестве разделителя аргументов.

    В большинстве случаев в HTML амперсанд не замененный последовательностью ничего не ломает (но XHTML - это другая история). Но что если нам случится столкнуться с параметром запроса, совпадающим с названием html-последовательности…

    21. Что использовать,

    Или
    ? Элемент p используется для выделения абзацев в тексте. Абзац - одно или больше предложений объединенных одной мыслью.

    Перенос строки (br ) в основном используется как презентационный инструмент и должен скорее быть реализован на CSS чем на HTML. Впрочем, есть несколько ситуаций, когда перенос строки может иметь семантический смысл, например, при разметке строк в стихах и песнях, при написании почтовых адресов или при разметке примеров кода. В этих случаях использование br оправдано, но использование br для разделения абзацев не допустимо.

    С другой стороны p имеет довольно четкое семантическое значение: разметка абзацев. Иногда веб-разработчики склонны рассматривать p как основной блочный для использование в качестве контейнеров, но это не верно. Не редкость увидеть элементы label и input внутри p в формах, но я бы назвал это семантически неверным. Метки и поля ввода не могут являться содержимым абзаца.

    23. Стоит ли заменить и на и ? Только если вы действительно хотите подчеркнуть что-то (сделать на чем-то ударение, выделить). Эти теги не являются равноценными.

    В Теперешние Не Менее Грустные Времена, авторы используют strong и em для того, чтобы сделать текст жирным или курсивом .

    em означает семантическое ударение, усиление значения. Содержимое, к которому применяется такой вид выделения, должно иметь усиление во время прочтения вслух (например, громче или протяжнее). strong означает ещё большее ударение, но часто это считается излишним (можно использовать вложенные em для указания еще большего ударения). Некоторые эксперты советуют использовать strong только для определенных элементов на странице, которые однозначно должны быть выделенными (например, указатель «текущей страницы»), и не должны отмечать слова и фразы внутри основного текста.

    b и i не имеют семантической нагрузки; они всего лишь меняют шрифт на жирный или курсив. Они хороши для использования в общепринятых типографских правилах, которые не нашли семантически подходящего HTML элемента. Например, названия кораблей традиционно отображаются курсивом, но в HTML нет элемента . По этому можно записать Титаник.

    27. Как правильно использовать элемент ?address используется для указания контактной информации на странице. Это может быть почтовый адрес, номер телефона, любая другая контактная информация. address - блочный элемент, который может содержать только текст и inline-элементы. В большинстве браузеров по умолчанию отображается курсивом, но это легко исправить с помощью CSS.

    address может быть использован только для указания почтового адреса, но это не так.

    28. Как правильно использовать элемент ?dfn используется для «определения значений терминов». Это типографское соглашение, особенно общепринятое в научных документах, для выделения курсивом нового термина, с которым читатель возможно не знаком, когда определение появляется в тексте первый раз. По умолчанию dfn отображается курсивом.

    Общеизвестное заблуждение, что dfn означает «сокращение» и многие авторы используют его также как abbr и acronym (указывая пояснение к термину с помощью атрибута title). Термины должны отмечаться с помощью dfn в документах только один раз (при первом употреблении термина и его пояснении).

    29. Как правильно использовать элемент ?var используется для разметки переменных, или заменяемых частей текта. Это типографское соглашение, принятое для выделения переменных курсивом, которые в реальной жизни заменяются другими данными. Например, в руководстве к телефонным коммуникациям, инструкция по перенаправлению входящего телефонного звонка на другой дополнительный номер может выглядеть приблизительно так:

    * 21 * дополнительный номер #

    Здесь тег var используется для указания «дополнительного номера» (который будет отмечен курсивом). Тот, кто захочет перенаправить звонок на дополнительный номер 942 напишет «21*942# ». Таким образом, var означает не то, что вы должны ввести «д-о-п-о-л-н-и-т-е-л-ь-н-ы-й н-о-м-е-р», а то, что вместо слов «дополнительный номер» будут цифры.

    Общеизвестное заблуждение, что var должно использоваться для указания переменных в примерах программного кода.

    31. Какая разница между тегами и ? Никто толком не может дать ответ на этот вопрос! Даже спецификация HTML в какой-то степени противоречит сама себе.

    abbr было расширением Netscape для HTML на протяжении «войны браузеров». acronym было Майкрософтовским расширением. Оба варианта означают приблизительно одно и тоже. Оба элемента были включены в спецификацию HTML с разной семантической нагрузкой. Проблема в том, что никто толком не может объяснить, в чем заключается эта семантика.

    Давайте обратимся к словарю:
    Аббревиатура - сокращенная форма слова или фразы.
    Акроним - слово, сформированное из первых букв или нескольких первых букв слов в составе фразы или нескольких слов.

    Определение акронима говорит, что это слово, т.е. оно может быть произнесено. Таким образом, «NATO» является акронимом, т.к. состоит из начальных букв в словосочетании «North Atlantic Treaty Organization». Напротив, «FBI» не будет являться акронимом, в соответствии с определением, потому что его нельзя произнести как целое слово, а скорее оно будет звучать как «еф-би-ай». Вот тут то и начинает неразбериха. Технически известно, что «FBI» - это инициализм (прим. переводчика: в оригинале «initialism») , определение которого по словарю звучит так:

    Инициализм - 1) название или термин, сформированный из первых букв или из нескольких первых букв слов, которые произносятся как отдельные слова; 2) группа первых букв означающих имя, организацию и т.д., которые произносяться отдельно.

    Первое определение почти то же, что и акроним, а второе более отстраненное. Не смотря на это в спецификации нет элемента initialism , и путаница усугубляется тем, что слово «акроним» в простой американской речи используется как синоним слова «инициализм».

    Спецификация HTML предлагает следующие определения:

    abbr - указывает на сокращенную форму (например, WWW, HTTP, URI, Mass и т.д.).
    acronym - указывает на акроним (например, WAC, radar и т.д.).

    Похоже на то, что спецификация ссылается на словарные определения, что означает что «FBI» должно быть размечено тегом abbr , т.к. не может быть произнесено как целое слово. Не смотря на это, несколькими абзацами ниже спецификация говорит:

    Западные языки широко используют такие акронимы как «GmbH», «NATO», и «F.B.I.», в качестве аббревиатур таких как «M.», «Inc.», «et al.», «etc.»

    Вы еще не запутались? Я да. Безопаснее всего всегда использовать abbr , так как все акронимы также являются аббревиатурами, но не наоборот. Не смотря на это, тут есть небольшая проблема. Microsoft были так расстроены решением W3C использовать abbr для абревиатур и инициализмов вместо acronym , что они отказались от поддержки тега abbr ! (Но все же ввели поддержку abbr в Internet Explorer 7.)

    Так что же делать бедным веб-разработчикам? И почему мы вообще должны заморачиваться? Конечно, хорошо иметь элемент, к которому можно прилепить атрибут title , но мы же это можем сделать и со span "ом. Суть в том, что размечать акронимы и аббревиатуры хорошо для смежных технологий; в частности для screen reader"ов. Но скрин ридеры в большинстве предпочитают игнорировать теги abbr и acronym , т.к. никто точно не знает, как правильно их использовать и Microsoft не поддерживает тег abbr . Это палка о двух концах.

    Вопрос на этот ответ я не знаю! Лично я использую abbr для таких очевидных аббревиатур как «Inc.» и для таких инициализмов как «FBI», и использую acronym для сокращений, которые можно прочесть как слово, например «GIF». Но в соответствии со спецификацией я не могу никого обвинить в разметке «FBI» в качестве акронима. А как на счет «SQL», который некоторые произносят по буквам, а некоторые называют «сикуэл».

    32. Почему отменяются определенные фичи? Самая распространенная фича которой интересуются новички - это атрибут target . Этот атрибут запрещен в HTML 4.01 Strict, но до сих пор поддерживается в HTML 4.01 Transitional. Существует много элементов и атрибутов, которые разрешены в Transitional, но запрещены в Strict.

    Причина, по которой W3C отменяет некоторые элементы и атрибуты - желает разделить содержимое (HTML), внешний вид (CSS) и поведение (JavaScript). Заставить элемент отображаться по середине - это вопрос презентационный; он должен быть решен средствами CSS, а не с помощью тега center . Открыть ссылку в новом окне - это вопрос поведения; он должен решаться средствами JavaScript, а не с помощью атрибута target .

    В основном, отмененные фичи - те, которые появились на протяжении войны браузеров в 90-х. Эти фичи были включены в HTML 3.2, чтобы хоть как-то навести порядок, но это не главная задача, которая стояла перед HTML. С релизом HTML 4, его авторы попытались «переучить Веб» убирая «пагубные» части, которые были включены в HTML 3.2, по крайней мере в Strict DTD.

    Другими словами эти вещи отменены не просто так. По возможности старайтесь их не использовать.

    37. Как подключить HTML страницу внутри другой страницы? Если вы используете Strict DTD, то у вас есть только один валидный способ - использовать элемент object :


    Alternate content here for browsers that don"t support OBJECT.

    К сожалению поддержки object "а нет в Internet Explorer"е.

    При использовании Transitional DTD можно использовать iframe "ы:


    Alternate content here for browsers that don"t support IFRAME.

    На протяжении ряда последних лет постоянно совершенствуются технические возможности вычислительной техники, развиваются коммуникационные средства и технологии управления информационными ресурсами, все это приводит к тому, что активно появляются более крупные информационные системы. Имеются в виду масштабы систем не только в отношении объемов поддерживаемых информационных ресурсов, но и в отношении количества их пользователей. Так в настоящее время объемы информационных ресурсов Web определяются многомиллионными количествами страниц.

    Подобное развитие информационных технологий, сетей и систем дало массовое распространение языку гипертекстовой разметки HTML. Под информационными системами подразумевают инструменты, моделирующие реальность, которые реализуются различными подходами. Для последних лет характерно появление инструментальных средств и крупных информационных систем, в которых предусмотрено совместное использование различных информационных технологий. В настоящее время имеется много различных специальных программ для создания Web-сайтов. С помощью этих программ работа разработчиков, создающих Web-страницы сложного дизайна, стала значительно легче, поскольку появилась возможность динамического генерирования Web-страниц.

    Деятельность информационных технологий характеризуется стандартизацией различного рода аспектов. Эта деятельность позволяет обеспечить перенос приложений и информационных ресурсов с одной программно–аппаратной платформы на другую, а также повторно использовать ресурсы, например использование программных компонентов приложений.

    Сеть Internet стала популярной с появления WorldWideWeb (WWW), поскольку эта сетевая технология первой предоставила пользователям достаточно простой и в то же время современный интерфейс доступа к различным сетевым ресурсам. Простое и удобное использование привело к увеличению количества пользователей WWW, а также к привлечению внимания коммерческих структур. В дальнейшем число пользователей стало расти лавинообразно, так продолжается и по сей день. В связи с этим появилась необходимость объединения всего множества информационных ресурсов, ее решением стало развитие технологии определения гипертекстовой навигационной системы. Эта технология была представлена языком HTML. Поскольку технология HTML на ранних этапах была очень простой, все пользователи сети одновременно смогли создавать и читать информационные материалы, опубликованные во Всемирной паутине. Это произошло потому, что разрабатывая различные компоненты технологии предположили квалификацию авторов информационных ресурсов, их оснащенность средствами вычислительной техники минимальными.

    Определение 1

    Язык HTML (HyperTextMarkupLanguage, язык разметки гипертекста) является языком разметки текста. Под разметкой понимают общую служебную информацию, не выводящуюся с документом, но определяющую внешний вид тех или иных фрагментов документа.

    Например, выделение слова жирным шрифтом или курсивом, вывод отдельного абзаца особым шрифтом или оформление заголовка крупным шрифтом.

    Стандарт SGML

    Это язык разметки создавался и был разрекламирован как один из вариантов SGML. Впервые в 1974 году Чарльз Голдфарб предложил, а в дальнейшем значительно доработав его приняли официальным стандартом ISO, SGML (StandardGeneralizedMarkupLanguage, Стандартный обобщенный язык разметки), представляющий собой метаязык, т.е. систему описания других языков.

    Стандарт SGML появился, так как возникла необходимость совместно использовать данные разными приложениями и операционными системами. Проблема с совместимостью возникла у пользователей очень давно, еще на заре появления вычислительной техники. Ученые из IBM - Чарльз Гольдфарб, Эд Мо-шер и Рэй Лори – проанализировали многие нестандартные языки разметки на предмет недостатков и сформулировали общие принципы, обеспечивающие совместную работу с документами в разных операционных системах. Ниже приведены эти принципы:

  • Необходимо использовать единые принципы форматирования во всех программах, обрабатывающих документы. Действительно все знают, насколько не легко договориться между собой собеседникам, общающимся на разных языках. Единый набор синтаксических конструкций и общая семантика заметно упрощают взаимодействие между программами.
  • Важен процесс специализации языков форматирования. Возможность использования наборов стандартных правил в построении специализированного языка не дает программисту зависеть от внешних реализаций и их представлений о потребностях конечных пользователей.
  • Формат документа должен четко определяться. Для этого применяют правила, задающие количество и маркировку используемых в документе языковых конструкций. В связи с применением стандартного формата пользователю всегда будет известна структура содержимого документа. Имеется в виду именно структурный формат. Набор правил, которые описывают этот формат, называют определением типа документа.
  • Замечание 1

    Вышеназванные правила составляют основу предшественника SGML - GML (Generalized Markup Language), который разрабатывали и исследовали около 10 лет, пока по соглашению, заключенному международной группой разработчиков, не появился стандарт SGML.

    Средства языка HTML

    Средства языка HTML обеспечивают форматную разметку документов, определяют гиперсвязи между документами (их фрагментами). За основу при написании кода HTML выбрали обычный текстовый файл. Можно сказать, что гипертекстовая база данных в концепции WWW представляет собой набор текстовых файлов, в которых разметка выполнена на языке HTML, определяющем форму представления информации (разметку) и структуру связей между файлами и информационными ресурсами (гипертекстовые ссылки). Разработчиками HTML были решены задачи:

    • предоставления дизайнерам гипертекстовых баз данных простого средства для создания документов;
    • создания мощного средства для отражения имевшихся в то время представлений об интерфейсе пользователя гипертекстовых баз данных.

    Первую задачу решили выбором теговой модели для описания документов. С помощью языка HTML можно проводить разметку электронного документа, отображаемого на экране с полиграфическим уровнем оформления, причем в результирующем документе могут содержаться разнообразные метки, иллюстрации, аудио - и видеофрагменты и т.д. В язык были включены развитые средства создания различных уровней заголовков, шрифтовых выделений, разные списки, таблицы и др.

    Другим важным моментом стало использование за основу языка обычного текстового файла. Среда редактирования HTML является нейтральной полосой между простейшим текстовым файлом и приложением WYSIWYG (whatyouseeiswhatyouget – что вы видите, то и получаете). Выбор среды редактирования предоставляет все преимущества текстового редактирования.

    Гипертекстовые ссылки, которые использовались для связи текстовых документов между собой, постепенно стали применять для объединения различных информационных ресурсов, в том числе звука и видео. С помощью системы гиперссылок HTML можно построить систему взаимосвязанных по разным критериям документов. В состав языка HTML входят команды (тэги), которые позволяют управлять формой и размером шрифтов, размером и расположением иллюстраций, а также осуществляют переход от фрагмента текста или иллюстрации к другому html-документу (гипертекстовые ссылки). Документ, представленный в html-форматом – это текстовый файл со всеми необходимыми сведениями о выводимой на экран информации. Управлять сценариями просмотра страниц Website (гипертекстовой базы данных, выполненной в технологии World Wide Web) можно с помощью языков программирования этих сценариев (JavaScript, Java и VBScript). Для обработки форм ввода данных пользователя и другой информации можно использовать специальные серверные программы (например, на языках PHP или Perl). Используя язык HTML, можно размещать на страницах гипертекстовые ссылки и интерактивные кнопки, соединяющие Web-страницы с другими страницами сайта и с другими сайтами. До сих пор не существует настолько удобных редакторов HTML, чтобы пользователь мог бы обойтись без текстового редактора и ручной расстановки тэгов, что гораздо усложняет работу с языком, делает необходимым овладение несвойственных ему функций.

    Замечание 2

    Проанализировав особенности языка HTML и оценив уровень его проработки, можно сделать вывод, что уже в ближайшие годы возможно появление более совершенных его модификаций, новых языков и прикладных пакетов для работы с web-страницами.

    Динамический и статический HTML-документы

    Html-документы бывают двух видов: статические и динамические. Статические документы хранят файлы файловой системы, используемой web-сервером или браузером при просмотре локальных файлов. Размещая информацию на web-сервере, используют динамические документы, не существующие постоянно в виде файлов, а генерирующиеся в момент запроса клиента. При чем для конечного пользователя не имеет значения каким способом представлены документы.

    Генерирование динамических документов HTML происходит с помощью специально написанной программы по правилам web-сервера. При планировании размещения информации на сервере, для правильного определения видов документов, учитывают степень обновления данных, их объем и частоту обращений к ним. При динамическом способе подразумевается хранение данных в формализованном виде, например в базе данных. При хранении данных в формализованном виде используются шаблоны документов с произведенными в них изменениями, генерируются статические документы путем использования любых средств отчетов, имеющихся в той системе управления баз данных (СУБД), которой последние обработаны и формализованы.

    Перспективы HTML

    Новые версии языка HTML не предполагаются, не смотря на это существует дальнейшее развитие HTML под названием XHTML (англ. Extensible Hypertext Markup Language - расширяемый язык разметки гипертекста). Пока возможности XHTML сопоставимы с HTML, но предъявляются более строгие требования к синтаксису. Язык XHTML является подмножеством языка SGML, однако в отличие от HTML, соответствует спецификации XML. Вариант XHTML 1.0 был одобрен в качестве Рекомендации Консорциума Всемирной паутины (W3C) 26 января 2000 года. Нужно отметить, что в этом формате создано большое количество информационных ресурсов, которые долго еще будут пониматься web-браузерами и использоваться в своем первозданном виде. Кроме того, все новые форматы будут разрабатываться (и уже разрабатываются – например XML) с поддержкой технологий HTML.

    Стили работы меняются, меняются и средства доступа к содержимому. Язык HTML уже изначально создавался как платформо - независимый язык. Новые технологии используются повсеместно и довольно скоро пространство WWW перестанут применять лишь пользователи настольных персональных компьютеров, уже сейчас некоторыми пользователями активно применяются голосовые браузеры для незрячих или браузеры, использующие азбуку Бройля, зачастую содержимое выводится не на монитор компьютера, а на экран телевизора, где применяются приставки с выходом в сеть, на телетайп или на монохромные дисплеи различных организаторов-пейджеров и пр.