Инструменты пользователя

Инструменты сайта

  • Показать страницу
  • История страницы
  • Ссылки сюда
  • Оставить на чай
  • Экспорт в PDF
  • Наверх

  • software:development:ps_pycharm:html5:lesson:lesson.html_1

    Различия

    Показаны различия между двумя версиями страницы.

    Ссылка на это сравнение

    Предыдущая версия справа и слеваПредыдущая версия
    Следующая версия
    Предыдущая версия
    software:development:ps_pycharm:html5:lesson:lesson.html_1 [2023/08/19 06:18] – [Оглавление] vladpolskiysoftware:development:ps_pycharm:html5:lesson:lesson.html_1 [2023/08/20 20:05] (текущий) vladpolskiy
    Строка 1: Строка 1:
    -====== 2. HTML: Понятие, стандарты, тэги и атрибуты ====== +====== Основы HTML ====== 
    -Понятие языка разметки гипертекста. Современные HTML-стандарты: HTML4 / 5, XHTML. Элементы HTML и их разновидности, структура тегов. Основные атрибуты тегов, классификация. +**HTML (Hypertext Markup Language)** - это код, который используется для структурирования и отображения веб-страницы и её контента. Например, контент может быть структурирован внутри множества параграфов, маркированных списков или с использованием изображений и таблиц данныхКак видно из названия, эта статья даст вам базовое понимание HTML и его функций. 
    -====== HTML: Понятиестандарты, тэги и атрибуты ====== +===== Что такое HTML на самом деле===== 
    -===== Оглавление ===== +HTML не является языком программирования; это язык разметки, и используется, чтобы сообщать вашему браузеру, как отображать веб-страницы, которые вы посещаете. Он может быть сложным или простым, в зависимости от того, как хочет веб-дизайнерHTML состоит из ряда [[software:development:ps_pycharm:html5:glossary:void_element|элементов]], которые вы используете, чтобы вкладывать или оборачивать различные части контента, чтобы заставить контент отображаться или действовать определённым образом. Ограждающие теги могут сделать слово или изображение ссылкой на что-то ещё, могут сделать слова курсивомсделать шрифт больше или меньше и так далее. Например, возьмём следующую строку контента: 
    -  * Понятие языка разметки HTML +<code> 
    -  * Современные стандарты HTML: +Моя кошка очень раздражена 
    -     * [[#HTML4|HTML4.]] +</code> 
    -     * [[#XHTML|XHTML]] +Если бы мы хотели, чтобы строка стояла сама по себе, мы могли бы указатьчто это абзац, заключая его в теги абзаца: 
    -     * [[#Охарактеризуем специфику HTML5:|HTML5]] +<code html
    -  * [[#Консорциум Всемирной сети.|Консорциум Всемирной сети.]] +<p>Моя кошка очень раздражена</p>
    -  * [[#HTML теги. Структура тега.|HTML теги. Структура тега.]] +
    -  * [[#HTML теги. Парные и одиночные теги.|HTML теги. Парные и одиночные теги.]] +
    -  -  +
    -  * HTML теги. Блочные и строчные теги+
    -  * HTML теги. Семантические теги. +
    -  * HTML теги. Классификация атрибутов+
    -    - Универсальные атрибуты +
    -    - Уникальные атрибуты +
    -    - Специфические атрибуты +
    -    - Событийные атрибуты +
    -===== Понятие языка разметки HTML ===== +
    -**HTML (HyperText Markup Language)** – это не язык программирования (как, например, Python), а так называемый язык разметки. Он необходим для сообщения браузеру способа отображения посещаемой вами веб-страницы. Вместо тогочтобы показывать сплошной текст, **HTML** позволяет обернуть его в специальные элементы **(теги)**. Это обеспечивает особое поведение передаваемой информации: она может выделяться курсивом, жирным текстом, транслироваться в виде таблиц, списковрисунков и иных мультимедиа-данных. +
    -\\   +
    -Теги способны нести как **структурный смысл** (например, показать, что перед нами таблица некоторой размерности с заголовком), так и **семантический** (выделить информацию определенным образом для поисковых роботов, чтобы те лучше индексировали ваш сайтили браузеров). +
    - +
    -<WRAP center round info 100%> +
    -Полезно знать +
    -HTML разработал британец Тим Бернес-Ли в конце 1980-х годов, а как официальный стандарт HTML функционирует с 1993 года. Им же опубликован первый в мире сайт – http://info.cern.ch/hypertext/WWW/TheProject.html - работающий по сей день. На нем содержится информация о технологии World Wide Web, базирующейся на протоколе HTTP, адресации URI, разметке HTML. +
    - +
    -Сегодня Тим Бернес-Ли возглавляет W3-Консорциум (World Wide Web Consortium), основная задача которого: разработка и внедрение стандартов Интернета с учетом современных потребностей. +
    -</WRAP> +
    -Изначально HTML был кроссплатформенным, что создавало определенные трудности. Разные браузеры отображали теги по-своему, некоторые элементы могли восприниматься не всеми программами. Причина: отсутствие единого стандарта, поддерживаемого разработчиками. Особую проблему доставлял Internet Explorer (Microsoft долгое время следовала своим наработкам в понимании HTML), что требовало от сайтостроителей учета разных видов браузеров, чтобы содержимое страниц выглядело более-менее одинаковым у пользователей. +
    -\\   +
    -В последние годы данная проблема фактически решена, так как крупные игроки на рынке браузеров пришли к соглашению. На просторах Интернета еще можно встретить сайты, учитывающие старые браузеры, но это уже не обязательное требование к верстальщикам. Чаще всего вас просто попросят обновить свой браузер, чтобы вы смогли увидеть сайт в задуманном виде (для эксперимента попробуйте зайти в любую социальную сеть с очень старого браузера). +
    - +
    -===== Современные стандарты HTML ===== +
    - +
    -На протяжении курса мы будем придерживаться актуального стандарта **HTML5**. Он завершен в 2014 году и рекомендован для использования в современной веб-разработке. В него добавлены новые элементыучитывающие специфику нынешнего сайтостроения и потребность в мультимедийных компонентах (аудиовидео, интерактивность). +
    - +
    -До этого 17 лет главенствующим стандартом являлся **HTML 4** (с 1997 года). Он встречается и сегодня на ряде сайтов. Определить его можно на основании так называемого доктайпа. +
    - +
    -<code html  Доктайп HTML4> +
    -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">+
     </code> </code>
    -Это первая строка любого **HTML-документа**, позволяющего браузерам понять способ работы с содержимым страницы. Хоть стандарт и является устаревшим, в нем содержится основной набор тегов, которыми пользуются при создании сайтов. Важно учесть, что часть элементов уже не рекомендована к применению и со временем будет убрана. 
    - 
    -Несмотря на строгую типизацию в языке **HTML**, ряд браузеров достаточно лояльно относится к документам. Так, тег абзаца (обозначается **<p><\p>**) разработчик вполне может написать по своему усмотрению: 
    - 
    -  * **<p>Абзац<\p>** (написание в соответствии со стандартом); 
    -  * **<P>Абзац<\P>** (браузеры редко учитывают регистр тегов); 
    -  * **<p>Абзац** (некоторые верстальщики могут забыть поставить закрывающий тег, что никак не смутит новую версию практически любого браузера). 
    - 
    -Хорошая практика показывает, что нужно придерживаться некоего единого стиля. Чтобы как-то ограничить вольности программистов, внедрили стандарт **XHTML**. Он сочетает в себе **HTML** и **XML** форматы. Первоочередная задача данного стандарта – замена **HTML 4**. Однако после появления **HTML5** эта потребность несколько снизилась. Тем не менее, многие разработчики используют его и сегодня, чтобы гарантировать отсутствие ошибок в написании кода. 
    - 
    -==== Ключевые особенности стандарта XHTML: ==== 
    -  * все элементы пишутся строго в нижнем регистре; 
    -  * закрываются даже одиночные теги (например, **<img />**); 
    -  * основная кодировка – **UTF-8**; 
    -  * все атрибуты записываются только в развернутом виде (например, если в **HTML5** отключить возможность выбора элемента из выпадающего списка можно указанием простого атрибута **disabled**, то в **XHTML** обязательно писать **disabled="disabled"**). 
    - 
    -Верстать код сайта на основании стандарта **XHTML** не обязательно, так как **HTML5** и современные браузеры не столь требовательны, но он может встретиться (и этого не нужно пугаться). 
    - 
    -==== Охарактеризуем специфику HTML5: ==== 
    -  * добавлены семантические элементы (**<nav>, <section>, <article> и др.**), которые облегчают чтение структуры страницы как разработчикам, так и поисковым машинам; 
    -  * внедрена поддержка векторной графики и специальных форматов **(svg, canvas, MathML)**; 
    -  * представлены новые элементы управления **(dates, email, tel)**; 
    -  * удалены устаревшие теги **(big, center, isindex)**. 
    - 
    -<WRAP center round info 100%> 
    -**Итог** 
    -\\   
    -Таким образом, базис современной разработки – стандарт HTML5. 
    -</WRAP> 
    - 
    - 
    - 
    -===== Консорциум Всемирной сети ===== 
    - 
    -Количество сайтов в сети настолько велико, что уже не хватает заложенного объема **IPv4-адресов** для их идентификации. С каждым годом число растет, что логично приводит к необходимости стандартизации их написания и отображения конечным пользователям. 
      
    -Некоммерческая организация **W3-Консорциум (www.w3.org)** разрабатывает единые принципы и рекомендации для производителей Интернет-контента, чтобы обеспечить максимальную совместимость между продуктами, платформами, программами. Это позволяет делать Всемирную сеть максимально удобной и универсальной.+===== Анатомия HTML элемента ===== 
     +Давайте рассмотрим элемент абзаца более подробно. 
     +{{:software:development:ps_pycharm:html5:lesson:grumpy-cat-small.png?|grumpy-cat-small}}
      
    -{{:software:development:ps_pycharm:html5:lesson:1_1.png?|W3-Консорциум}} +  - **Открывающий тег (Opening tag)**Состоит из имени элемента (в данном случае, **<p>**), заключённого в открывающие и закрывающие угловые скобкиОткрывающий тег указывает, где элемент начинается или начинает действовать, в данном случае — где начинается абзац. 
    -\\  +  **Закрывающий тег (Closing tag)**: Это то же самое, что и открывающий тег, за исключением того, что он включает в себя косую черту перед именем элемента. Закрывающий элемент указывает, где элемент заканчивается, в данном случае — где заканчивается абзац. Отсутствие закрывающего тега является одной из наиболее распространённых ошибок начинающих и может приводить к странным результатам. 
     +  - **Контент (Content)**: Это контент элемента, который в данном случае является просто текстом. 
     +  - **Элемент(Element)**: Открывающий тег, закрывающий тег и контент вместе составляют элемент.
      
    -Помимо непосредственно стандартов **HTML** компания занимается утверждением и других **связанных положений**: +Элементы также могут иметь атрибуты, которые выглядят так:
    -  - CSS (каскадные таблицы стилей), +
    -  - DOM (объектная модель документа), +
    -  - PNG (формат хранения растровых изображений), +
    -  - HTTP (протокол передачи данных), +
    -  - RDF (модель представления метаданных), +
    -  - XPath (язык для доступа к частям XML-документов) и др+
      
    -Важно и то, что вы всегда можете проверить соответствие вашего кода стандарту при помощи **валидаторов**. В сети их огромное множество и для разных целей**HTML, CSS, JavaScript**. Сервисы позволяют валидировать свой или чужой код. Для этого требуется ввести в поисковике требуемый (например, **HTML5** валидатор), вставить туда код и произвести проверку. Все нарушения будут подсвечены соответствующим цветом и подсказками. Ими пользуются все разработчики для верификации качества работы программистовВсе современные **IDE** дают возможность валидировать код (в большинстве случаев для этого потребуется установка плагина).+{{:software:development:ps_pycharm:html5:lesson:anatomy_of_an_html_element.png?|anatomy_of_an_html_element.png}}
      
    -===== HTML теги. Структура тега =====+Атрибуты содержат дополнительную информацию об элементе, которую вы не хотите показывать в фактическом контентеВ данном случае, **class - имя атрибута**, а **nase - значение атрибута**. Класс позволяет дать элементу идентификационное имя, которое может позже использоваться, чтобы обращаться к элементу с информацией о стиле и прочих вещах.
      
    -<WRAP center round tip 100%> +Атрибут всегда должен иметь:
    -**Тег** – отдельный HTML элемент, позволяющий вкладывать или оборачивать части документа для определенного отображения или поведения. +
    -</WRAP>+
      
    -Говоря проще, при помощи тегов вы можете выделять текст, вставлять рисунки и видео, передавать служебную информацию, обозначать ссылки.+  - Пробел между ним и именем элемента (или предыдущим атрибутом, если элемент уже имеет один или несколько атрибутов). 
     +  - Имя атрибута, за которым следует знак равенства. 
     +  - Значение атрибута, заключённое с двух сторон в кавычки.
      
    -Теги могут дополняться атрибутами, свойствами. С их помощью можно модифицировать содержимое элемента, уникализировать его.+===== Вложенные элементы ===== 
     +Вы также можете располагать элементы внутри других элементов — это называется **вложением**Если мы хотим заявить, что наша **кошка** очень раздражена, мы можем заключить слово "очень" в элемент <strong> который указывает, что слово должно быть сильно акцентированно:
      
    -На текущий момент насчитывается около **120 тегов**, а если убрать устаревшие, то и того меньше. Их не так сложно запомнить, да и наиболее часто используемых несколько десятков. 
      
    -Рассмотрим **типичную структуру web-элемента**: 
      
    -  - **Открывающий тег** (все теги представляются в угловых скобках, в открывающем, если требуется, перечисляются атрибуты); 
    -  - **Закрывающий тег** (присутствует не во всех тегах, идентифицируется косой чертой); 
    -  - **Атрибут**, свойство (название свойства и его значение предпочтительно в двойных кавычках, возможно использовать и одинарные); 
    -  - **Содержимое** (внутреннее содержимое тега, обычно в виде текста либо других вложенных тегов). 
      
    -\\   
    -{{ :software:development:ps_pycharm:html5:lesson:2_2.2.svg |Структура web-элемента}} 
    software/development/ps_pycharm/html5/lesson/lesson.html_1.1692415099.txt.gz · Последнее изменение: 2023/08/19 06:18 — vladpolskiy