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

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

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

  • software:development:web:docs:learn:html:introduction_to_html:document_and_website_structure

    Различия

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

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

    Предыдущая версия справа и слеваПредыдущая версия
    Следующая версия
    Предыдущая версия
    software:development:web:docs:learn:html:introduction_to_html:document_and_website_structure [2024/01/29 19:20] – [Метаданные документа] vladpolskiysoftware:development:web:docs:learn:html:introduction_to_html:document_and_website_structure [2024/01/29 20:33] (текущий) – [Самостоятельная работа: создайте свою собственную карту сайта] vladpolskiy
    Строка 168: Строка 168:
     Полезно понять общий смысл всех структурных элементов HTML — это то, над чем вы будете работать постепенно, когда начнёте получать больше опыта с веб-разработкой. Вы можете ознакомиться с деталями, прочитав статью [[software:development:web:docs:web:html:element|HTML-элементы.]] Пока что это основные определения, которые вы должны попытаться понять: Полезно понять общий смысл всех структурных элементов HTML — это то, над чем вы будете работать постепенно, когда начнёте получать больше опыта с веб-разработкой. Вы можете ознакомиться с деталями, прочитав статью [[software:development:web:docs:web:html:element|HTML-элементы.]] Пока что это основные определения, которые вы должны попытаться понять:
      
    -====Основные элементы==== +  * [[software:development:web:docs:Web:HTML:Element:main|<main>]] предназначен для содержимого, уникального для этой страницы. Используйте [[software:development:web:docs:Web:HTML:Element:main|<main>]] только один раз на странице и размещайте прямо внутри [[software:development:web:docs:Web:HTML:Element:body|<body>]]. В идеале он не должен быть вложен в другие элементы
    - +  * [[software:development:web:docs:Web:HTML:Element:article|<article>]] окружает блок связанного содержимого, который имеет смысл сам по себе без остальной части страницы (например, один пост в блоге). 
    -Основные элементы являются основой любого HTML документа. Вы увидите эти элементы в исходном коде для всех веб-страниц после задания типа документа на первой строке на странице. DOCTYPE определяет, какую версию (X) HTML эта страница использует. Элементы страницы находятся между открывающим тегом <HTML> и закрывающим <HTML>. Элемент [[software:development:web:docs:Web:HTML:Element:html|<html>]] называется корневым элементом+  * [[software:development:web:docs:Web:HTML:Element:section|<section>]] подобен [[software:development:web:docs:Web:HTML:Element:article|<article>]], но больше подходит для группирования одной части страницы, которая представляет собой одну часть функциональности (например, мини-карту или набор заголовков статей и сводок). Считается хорошей практикой начинать каждый раздел с заголовка. Также обратите внимание, что в зависимости от контекста вы можете разбить [[software:development:web:docs:Web:HTML:Element:article|<article>]] на несколько [[software:development:web:docs:Web:HTML:Element:section|<section>]] или, наоборот[[software:development:web:docs:Web:HTML:Element:section|<section>]] на несколько [[software:development:web:docs:Web:HTML:Element:article|<article>]]. 
    - +  * [[software:development:web:docs:Web:HTML:Element:aside|<aside>]] содержит контент, который не имеет прямого отношения к основному содержимому, но может содержать дополнительную информацию, косвенно связанную с ним (словарь, биография автора, связанные ссылки и т. д.). 
    -{{tablelayout?colwidth="100px"}} +  [[software:development:web:docs:Web:HTML:Element:header|<header>]] представляет собой группу вводного содержимого. Если он дочерний элемент [[software:development:web:docs:Web:HTML:Element:body|<body>]], то он определяет глобальный заголовок веб-страницыно если он дочерний элемент [[software:development:web:docs:Web:HTML:Element:article|<article>]] или [[software:development:web:docs:Web:HTML:Element:section|<section>]], то определяет конкретный заголовок для этого раздела (постарайтесь не путать его с [[software:development:web:docs:Learn:HTML:Introduction_to_HTML:The_head_metadata_in_HTML#adding_a_title|titles и headings]]). 
    -| **Элемент** | **Описание** | +  * [[software:development:web:docs:Web:HTML:Element:nav|<nav>]] содержит основные функции навигации для страницы. Так же часто в нем можно увидеть логотип и / или название сайта или компании. Вторичные ссылки и т. д. не входят в навигацию. 
    -[[software:development:web:docs:Web:HTML:Element:html|<html>]] | Представляет собой корень (элемент верхнего уровня) HTML-документа, поэтому его так же называют корневым элементом. Все другие элементы должны быть потомками этого элемента (должны находиться внутри него)+  * [[software:development:web:docs:Web:HTML:Element:footer|<footer>]] представляет собой группу конечного контента для страницы.
     ====Несемантические обёртки==== ====Несемантические обёртки====
    -=====Анатомия HTML-элемента===== +Иногда вы будете сталкиваться с ситуацией, когда вы не можете найти идеальный семантический элемент, чтобы сгруппировать некоторые элементы вместе или обернуть некоторый контент. Иногда вам просто нужно будет сгруппировать несколько элементов вместе, чтобы применить к ним, как к единой сущности, [[software:development:web:docs:Glossary:CSS|CSS]] или [[software:development:web:docs:Glossary:JavaScript|JavaScript]]. Для таких случаев в HTML есть элементы [[software:development:web:docs:Web:HTML:Element:div|<div>]] и [[software:development:web:docs:Web:HTML:Element:span|<span>]]. Вам следует использовать их с подходящим значением атрибута [[software:development:web:docs:Web:HTML:Global_attributes#class|class]] или [[software:development:web:docs:Web:HTML:Global_attributes#id|id]], чтобы можно было легко получить к ним доступ.
    -Давайте подробнее изучим наш элемент абзаца из предыдущего раздела: +
    -{{:software:development:web:docs:learn:html:introduction_to_html:anatomy_of_an_html_element_0.svg|}}+
      
    -Анатомия нашей элемента такова:+[[software:development:web:docs:Web:HTML:Element:span|<span>]] — это строчный несемантический элемент, который стоит использовать только если вы не можете подобрать более подходящий семантический текстовый элемент для обёртывания контента или если не хотите добавлять какие-либо конкретные значения. Например:
      
    -  * **Открывающий тег:** состоит из имени элемента (в данном примере p для абзаца), заключенного в открывающие и закрывающие угловые скобки. Этот открывающий тег отмечает начало или начало действия элемента. В этом примере он предшествует началу текста абзаца. 
    -  * **Содержимое:** это содержимое элемента. В данном примере это текст абзаца. 
    -  * **Закрывающий тег:** он аналогичен открывающему тегу, за исключением того, что он включает косую черту перед именем элемента. Это отмечает, где заканчивается элемент. Отсутствие закрывающего тега — распространенная ошибка новичков, которая может привести к необычным результатам. 
    -Элемент представляет собой открывающий тег, за которым следует содержимое, а затем закрывающий тег. 
    - 
    -====Создание первого HTML-элемента==== 
    -Отредактируйте строку ниже в области «Редактора кода», обернув ее тегами <em> и </em>.Чтобы открыть элемент, поместите открывающий тег <em> в начало строки. Чтобы закрыть элемент, поместите закрывающий тег </em> в конце строки. Это должно привести к форматированию текста //курсивом//! Просматривайте обновления изменений в режиме реального времени в области «Вывод (правая область редактора). 
    -<html> 
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_em.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> 
    -</iframe> 
    -</html> 
    -Если вы допустили ошибку, вы можете очистить свою работу с помощью кнопки «Reset». 
    -====Вложенные элементы==== 
    -Элементы можно размещать внутри других элементов. Это называется **вложением**. Если бы мы хотели указать, что наш **кот** очень сварливый, мы могли бы обернуть слово «очень» в [[software:development:web:docs:Web:HTML:Element:strong|<strong>]] элемент, что означает, что слово должно иметь строгое форматирование текста: 
     <code html HTML> <code html HTML>
    -<p>Мой кот <strong>очень</strong> сварливый.</p>+<p> 
     +  Пьяный Король возвратился в свою комнату в 01:00 и всё никак не мог войти в 
     +  дверь: хмель мешал 
     +  <span class="editor-note" 
     +    >[Примечание редактора: В этот момент свет на сцене должен быть 
     +    приглушён]</span 
     +  >. 
     +</p>
     </code> </code>
    -<html> 
    -Пример: <p>Мой кот <strong>очень</strong> сварливый.</p> 
    -</html> 
    -Есть правильный и неправильный способ вложения. В приведенном выше примере мы сначала открыли элемент тегом **%%<p>%%**, а затем открыли тег **%%<strong>%%**. Для правильной вложенности мы должны сначала закрыть элемент тегом **%%</strong>%%**, а затем закрыть весь элемент **%%</p>%%**. 
      
    -Ниже приведен пример неправильного способа вложения: +В этом примере примечание редактора просто сообщает дополнительные пожелания режиссёру пьесы. В нем нет особого семантического значения. Для слабовидящих пользователей, возможнопримечание будет отделено от основного содержимого с помощью CSS.
    -<code html HTML> +
    -<p>Мой кот <strong>очень сварливый.</p></strong> +
    -</code> +
    -<html> +
    -Пример: <p>Мой кот <strong>очень сварливый.</p></strong> +
    -</html> +
    -**Теги должны открываться и закрываться таким образомчтобы они находились внутри или снаружи друг друга**. Учитывая такое перекрытие, как в приведенном выше примеребраузеру приходится угадывать ваши намерения. Подобные догадки могут привести к неожиданным результатам.+
      
    -====Пустотные элементы==== +[[software:development:web:docs:Web:HTML:Element:div|<div>]] — это блочный несемантический элементкоторый следует использовать только если вы не можете подобрать более подходящий семантический блочный элемент или если не хотите добавлять какие-либо конкретные значения. Например, представьте виджет корзины в интернет-магазине, который вы можете открыть в любой момент нахождения на сайте:
    -Не все элементы следуют шаблону открывающего тега, содержимого и закрывающего тега. Некоторые элементы состоят из одного тега, который обычно используется для вставки/внедрения чего-либо в документ. Такие элементы называются [[software:development:web:docs:Glossary:Void_element|пустыми элементами]]. Например, [[software:development:web:docs:Web:HTML:Element:img|<img>]] элемент встраивает файл изображения на страницу: +
    -<code html HTML> +
    -<img +
    -  src="images/firefox-icon.png" +
    -  alt="Firefox icon" /> +
    -</code> +
    -Это выведет следующее: +
    -<html> +
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_img_1.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html> +
    -<WRAP left round box 100%> +
    -:!: **Примечание.** В HTML нет необходимости добавлять символ **/** в конце тега элемента void (пустого элемента), например: %%<img src="images/firefox-icon.png" alt="Firefox icon" />%%. Однако это также допустимый синтаксис, и вы можете сделать это, если хотите, чтобы ваш HTML был допустимым XML. +
    -</WRAP> +
    -<html> +
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_img_2.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html> +
    -=====Атрибуты===== +
    -Элементы также могут иметь атрибуты. Атрибуты выглядят следующим образом: +
    -{{:software:development:web:docs:learn:html:introduction_to_html:anatomy_of_an_html_element_1.svg|}} +
    - +
    -Атрибуты содержат дополнительную информацию об элементе, которая не будет отображаться в содержимом. В этом примере 'class' атрибут представляет собой идентифицирующее имя, используемое для указания элемента с информацией о стиле. +
    -Атрибут должен иметь: +
    - +
    -  * Пробел между ним и именем элемента. (Для элемента с более чем одним атрибутом атрибуты также должны быть разделены пробелами.) +
    -  * Имя атрибута, за которым следует знак равенства. +
    -  * Значение атрибута, заключенное в открывающие и закрывающие кавычки. +
    -====Добавление атрибутов к элементу==== +
    -Другой пример элемента: [[software:development:web:docs:Web:HTML:Element:a|<a>]]. Это означает якорь . Якорь может превратить заключенный в него текст в гиперссылку. Якоря могут принимать ряд атрибутов, вот некоторые из них: +
    -{{tablelayout?colwidth="100px"}} +
    -| [[software:development:web:docs:web:html:attributes:href|href]] | Значение этого атрибута определяет веб-адрес ссылки. Например: ''href="https://www.mozilla.org/"''. | +
    -| [[software:development:web:docs:web:html:attributes:title|title]] | Атрибут ''title'' указывает дополнительную информацию о ссылке, например описание страницы, на которую имеется ссылка. Например, ''title="The Mozilla homepage"''. Оно появляется в виде всплывающей подсказки при наведении курсора на элемент. | +
    -| [[software:development:web:docs:web:html:attributes:target|target]] | Атрибут ''target'' определяет контекст просмотра, используемый для отображения ссылки. Например, ''target="_blank"'' отобразит ссылку в новой вкладке. Если вы хотите отображать связанный контент на текущей вкладке, просто опустите этот атрибут. | +
    -Отредактируйте строку ниже в области ввода , чтобы превратить ее в ссылку на ваш любимый веб-сайт. +
    - +
    -  - Добавьте открывающий ''<a>'' и закрывающий ''</a>'' теги в элемент. +
    -  - Добавьте ''href'' атрибут и через знак ''='' в ''кавычках'' ссылку на любой сайт и атрибут ''title'' с присвоением через знак ''='' информации о сайте ''заключенной в кавычки''+
    -  - Укажите ''target'' атрибутчтобы ссылка открывалась в новой вкладке ''(target="_blank")''+
    -Отредактируйте строку ниже в области «Редактора кода», и вы должны увидеть ссылку, которая при наведении курсора мыши отображает значение атрибута ''title'', а при нажатии открывает новую вкладку и переходит к веб-адресу  ''href'' атрибута. Помните, что вам необходимо включать пробел между именем элемента и между каждым атрибутом. Просматривайте обновления изменений в режиме реального времени в области «Вывод (правая область редактора). +
    - +
    -<html> +
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_a_1.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html> +
    -Если вы допустили ошибку, вы можете очистить свою работу с помощью кнопки «Reset». Смотрите пример ниже:+
      
     <code html HTML> <code html HTML>
    -<a href="https://www.mozilla.org/" title="The Mozilla homepage" target="_blank">Ссылка на сайт</a> +<div class="shopping-cart"> 
    -</code+  <h2>Корзина</h2> 
    -====Логические атрибуты==== +  <ul> 
    -Иногда вы увидите атрибуты, написанные без значенийЭто вполне приемлемоОни называются логическими атрибутамиЛогические атрибуты могут иметь только одно значение, которое обычно совпадает с именем атрибута. Например, рассмотрим [[software:development:web:docs:Web:HTML:Element:input#disabled|disabled]] атрибут, который можно назначить элементам ввода формы. (Это используется для отключения элементов ввода формы, чтобы пользователь не мог вводить данные. Отключенные элементы обычно отображаются серым цветом.) Например: +    <li> 
    -<code html HTML+      <p> 
    -<!-- использование отключенного атрибута не позволяет конечному пользователю вводить текст в поле ввода --> +        <a href=""><strong>Silver earrings</strong></a 
    -<input type="text" disabled="disabled" /> +        >: $99.95. 
    -</code+      </p
    -Для краткости допустимо записать это следующим образом: +      <img src="../products/3333-0985/thumb.png" alt="Серебряные серьги" /> 
    -<code html HTML> +    </li
    -<!-- использование отключенного атрибута не позволяет конечному пользователю вводить текст в поле ввода --+    <li>...</li
    -<input type="text" disabled /> +  </ul
     +  <p>Итого: $237.89</p
     +</div>
      
    -<!-- ввод текста разрешен, так как он не содержит атрибута отключен --> 
    -<input type="text" /> 
     </code> </code>
      
    -Для справки: приведенный выше пример также включает неотключенный элемент ввода формыHTML из приведенного выше примера дает такой результат:+Ему не подходит <aside>, поскольку это не обязательно относится к основному содержимому страницы ы хотите, чтобы его можно было просматривать из любого места). Также не подходит и <section>, т. к. это не часть основного содержимого страницы. Поэтому <div> подходит в этом случаеМы включили заголовок в качестве указателя, чтобы помочь пользователям программ чтения с экрана в его поиске.
      
    -<html+<WRAP left round box 100%
    -<iframe height="350" style="width100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_disabled_1.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +:!: **Предупреждение: Внимание:** div настолько просто использовать, что легко переборщитьПоскольку они не несут никакого семантического значения, они просто загромождают ваш HTML-код. Старайтесь использовать их только тогда, когда нет лучшего семантического решения, и постарайтесь свести их использование к минимуму, иначе вам будет трудно обновлять и поддерживать ваши документы
    -</iframe> +</WRAP>
    -</html>+
      
    -====Пропуск кавычек вокруг значений атрибутов==== +====Перенос строки и горизонтальный разделитель====
    -Если вы посмотрите на код многих других сайтов, вы можете встретить ряд странных стилей разметки, включая значения атрибутов без кавычек. Это разрешено при определенных обстоятельствах, но также может привести к нарушению вашей разметки при других обстоятельствах. Например, если мы вернемся к нашему предыдущему примеру со ссылкой, мы могли бы написать базовую версию только с атрибутом ''href'', вот так:+
      
    -<code html HTML> +Два элементакоторые вы будете периодически использовать или захотите узнать о них: [[software:development:web:docs:Web:HTML:Element:br|<br>]] и [[software:development:web:docs:Web:HTML:Element:hr|<hr>]]:
    -<!-- правильный синтаксис (с кавычками) --> +
    -<a href="https://www.mozilla.org/">Ссылка на сайт</a>+
      
    -<!-- не желательный синтаксис без кавычек (разрешено при определенных обстоятельствах) --> +[[software:development:web:docs:Web:HTML:Element:br|<br>]] создаёт разрыв строки в абзаце, и это единственный способ изменить жёсткую структуру в ситуации, когда вам нужна серия фиксированных коротких строк, например, в почтовом адресе или стихотворении. Пример:
    -<a href=https://www.mozilla.org/>Ссылка на сайт</a> +
    -</code> +
    -Однако как только мы добавляем атрибут ''title''таким образомвозникают проблемы: +
    -<code html HTML> +
    -<!-- не правильный синтаксис (без кавычек) при атрибуте title со значением The (вместо The Mozilla homepage) --> +
    -<a href=https://www.mozilla.org/ title=The Mozilla homepage>Ссылка на сайт</a> +
    -</code> +
    -Как написано выше, браузер неправильно интерпретирует разметку, принимая ''title'' атрибут за три атрибута: атрибут ''title'' со значением ''The'' и два логических атрибута ''Mozilla'' и ''homepage''. Очевидноэто не предназначено! Это приведет к ошибкам или неожиданному поведению, как вы можете видеть на живом примере ниже. Попробуйте навести курсор на ссылку, чтобы просмотреть текст заголовка! +
    - +
    -<html> +
    -<iframe height="350" style="width100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_title_1.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html>+
      
    -Всегда включайте кавычки атрибутов. Это позволяет избежать таких проблем и приводит к более читабельному коду. 
    -=====Одинарные или двойные кавычки?===== 
    -В этой статье вы также заметите, что атрибуты заключены в двойные кавычки. Однако в некотором HTML-коде вы можете увидеть одинарные кавычки. Это вопрос стиля. Вы можете смело выбирать, какой из них вам больше по душе. Обе эти строки эквивалентны: 
     <code html HTML> <code html HTML>
    -<!-- правильный синтаксис (с двойными кавычками) --> +<p> 
    -<a href="https://www.mozilla.org/" title="The Mozilla homepage">Ссылка на сайт </a+  Жила-была девчушка Нелл,<br /> 
    - +  Любившая писать HTML:<br /> 
    -<!-- правильный синтаксис (с одинарными кавычками) --> +  Её семантика ужасна была — <br /> 
    -<a href='https://www.mozilla.org/' title='The Mozilla homepage'>Ссылка на сайт#1 </a+  Она и сама прочитать ничего не могла. 
    - +</p>
    -<!-- правильный синтаксис (с двойными для атрибута href="" и и одиночными для атрибута title='') --> +
    -<a href="https://www.mozilla.org/" title='The Mozilla homepage'>Ссылка на сайт#</a+
    -</code> +
    -Убедитесь, что вы не смешиваете одинарные и двойные кавычки для одного атрибута. Этот пример (ниже) показывает своего рода смешение кавычек, которое может пойти не так (вместо ссылки https://www.mozilla.org/ получим <color #ed1c24>https://www.mozilla.org/'title=</color>): +
    -<code html HTML> +
    -<!-- не правильный синтаксис (с разными кавычками) --> +
    -<a href="https://www.mozilla.org/' title="The Mozilla homepage">Ссылка на сайт#</a>+
     </code> </code>
      
    -<html> +Без элемента [[software:development:web:docs:Web:HTML:Element:br|<br>]] абзац разместится в одну длинную линию (как было сказано ранее, [[software:development:web:docs:Learn:HTML:Introduction_to_HTML:Getting_started#whitespace_in_html|HTML игнорирует переносы строк]]), а с ним в коде — разметка будет выглядеть следующим образом:
    -<iframe height="350" style="width100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_quotes_1.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html>+
      
    -Однако если вы используете один тип кавычек, вы можете включить кавычки другого типа в значения атрибутов:+Жила-была девчушка Нелл, Любившая писать HTML: Её семантика ужасна была — Она и сама прочитать ничего не могла.
      
    -<code html HTML+[[software:development:web:docs:Web:HTML:Element:hr|<hr>]] создаёт горизонтальный разделитель в документе, это означает тематическое изменение текста (например, изменение темы или сцены). Визуально он просто похож на горизонтальную линию. В качестве примера:
    -<!-- одинарная кавычка внутри двойной --> +
    -<a href="https://www.mozilla.org/" title="Isn't no the Mozilla homepage">Ссылка на сайт#4 </a> +
    -</code>+
      
    -Чтобы использовать кавычки внутри других кавычек того же типа (одинарной или двойной кавычки), используйте сущности HTML (например ''&quot;'' может быть интерпретирован как обрамляющая значение атрибута кавычка): 
     <code html HTML> <code html HTML>
    -<!-- использование сущности html &quot;  --+<p>Рон был зажат в углу адскими тварями. Он боялся, но твёрдо решил защитить своих друзей, поднял свою волшебную палочку и приготовился к битве, надеясь, что справится со своим несчастьем.</p
    -<a href="https://www.mozilla.org/" title="Isn't &quot;no the&quot; Mozilla homepage">Ссылка на сайт#5 </a>+<hr> 
     +<p>Тем временем Гарри сидел дома с раскрытым указом и размышлял о том, когда выйдут новые серии спин-оффов; в это время зачарованное письмо пархнуло в окно и приземлилось у него на коленях. Он прочитал его и подскочил на ноги; он подумал: "Думаю, самое время вернуться к работе".</p>
     </code> </code>
      
    -Пример неправильного использования кавычек внутри других кавычек значения атрибута (отредактируйте строку ниже в области ввода в окне редактора **<color #ed1c24>"</color><color #22b14c>no the</color><color #ed1c24>"</color>** на **<color #ed1c24>&quot;</color><color #22b14c>no the</color><color #ed1c24>&quot;</color>** и вы сможете увидеть свои изменения в режиме реального времени в области «Вывод»). Если вы допустили ошибку, вы всегда можете сбросить ее с помощью кнопки Reset: +Будет выглядеть примерно так:
    -<code html HTML> +
    -<!-- использование сущности html &quot;  --> +
    -<a href="https://www.mozilla.org/" title="Isn't "no the" Mozilla homepage">Ссылка на сайт#6 </a> +
    -</code>+
      
     <html> <html>
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_quotes_2.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true">+<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/Learn/HTML/Introduction_to_HTML/Document_and_website_structure.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true">
     </iframe> </iframe>
     </html> </html>
    -=====Анатомия HTML-документа===== 
    -Отдельные элементы HTML сами по себе бесполезны. Далее давайте рассмотрим, как отдельные элементы объединяются, образуя целую HTML-страницу: 
    -<code html HTML> 
    -<!doctype html> 
    -<html lang="en-US"> 
    -  <head> 
    -    <meta charset="utf-8" /> 
    -    <title>My test page</title> 
    -  </head> 
    -  <body> 
    -    <p>This is my page</p> 
    -  </body> 
    -</html> 
    -</code> 
      
    -Здесь у нас есть:+=====Планирование простого веб-сайта=====
      
    -  * ''<!DOCTYPE html>'': Тип документа. Когда HTML был молод (1991-1992), типы документов должны были действовать как ссылки на набор правил, которым должна была следовать HTML-страница, чтобы считаться хорошим HTML. Раньше типы документов выглядели примерно так+Когда вы уже спланировали содержание одной веб-страницы, следующий логический шаг — продумать содержание всего веб-сайта: какие страницы нужны, как они будут устроены и связаны друг с другом для лучшего восприятия пользователем. Это называется [[software:development:web:docs:Glossary:Information_architecture|Information architecture]]. В большом, сложном вебайте на планирование может уходить много времени, однако спроектировать простой веб-сайт из нескольких страниц может быть очень легко и весело!
    -<code html HTML> +
    -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +
    -</code>+
      
    -В последнее время тип документа стал историческим артефактом, который необходимо включить, чтобы все остальное работало правильно. ''<!DOCTYPE html>''— это кратчайшая строка символов, которая считается допустимым типом документа. Это все, что вам нужно знать!+  *  Имейте в виду, что у вас будет несколько элементов, общих для большинства (если не всех) страниц — например, меню навигации и содержимого нижнего колонтитула. Например, для сайта компании хорошая идея разместить контактные данные в нижнем колонтитуле на каждой странице. Составьте список элементов, общих для всех страниц. 
     +  
     +{{:software:development:web:docs:learn:html:introduction_to_html:common-features.png?|}}
      
    -  * ''<html></html>'': [[software:development:web:docs:Web:HTML:Element:html|<html>]] элемент. Этот элемент оборачивает все содержимое страницы. Иногда его называют корневым элементом. +  * Теперь набросайте структуру страниц (можно взять за образец наш простой дизайн, приведённый раннее)Что находится в этих блоках?
    -  * ''<head></head>'': [[software:development:web:docs:Web:HTML:Element:head|<head>]] элемент. Этот элемент действует как контейнер для всего, что вы хотите включить в HTML-страницу, **а не для содержимого**, которое страница будет показывать зрителям. Сюда входят ключевые слова и описание страницы, которые будут отображаться в результатах поиска, CSS для стилизации контента, объявления наборов символов и многое другое. Подробнее об этом вы узнаете в следующей статье серии. +
    -  * ''<meta charset="utf-8">'': [[software:development:web:docs:Web:HTML:Element:meta|<meta>]] элемент. Этот элемент представляет метаданные, которые не могут быть представлены другими мета-элементами HTML, такими как [[software:development:web:docs:Web:HTML:Element:base|<base>]],  +
    -[[software:development:web:docs:Web:HTML:Element:script|<script>]],[[software:development:web:docs:Web:HTML:Element:style|<style>]],[[software:development:web:docs:Web:HTML:Element:title|<title>]] или +
    -[[software:development:web:docs:Web:HTML:Element:link|<link>]]. Атрибут [[software:development:web:docs:Web:HTML:Element:meta#charset|charset]] определяет кодировку символов вашего документа как UTF-8, которая включает большинство символов подавляющего большинства письменных языковнаписанных человеком. Благодаря этому параметру страница теперь может обрабатывать любой текстовый контент, который она может содержать. Нет причин не устанавливать это значение, и это может помочь избежать некоторых проблем в дальнейшем. +
    -  * ''<title></title>'': [[software:development:web:docs:Web:HTML:Element:title|<title>]] элемент. Это устанавливает заголовок страницы, который отображается на вкладке браузера, в которую загружена страница. Заголовок страницы также используется для описания страницы, когда она добавлена ​​в закладки. +
    -  * ''<body></body>'': [[software:development:web:docs:Web:HTML:Element:body|<body>]] элемент. Он содержит весь контент, отображаемый на странице, включая текст, изображения, видео, игры, воспроизводимые звуковые дорожки и что-либо еще.+
      
    -====Добавление функций в HTML-документ====+{{:software:development:web:docs:learn:html:introduction_to_html:site-structure.png?|}}
      
    -Если вы хотите поэкспериментировать с написанием HTML на локальном компьютере, вы можете:+  * Теперь составьте список остальной (уникальной для каждой страницы) информации, которую вы разместите на сайте.
      
    -  Скопируйте приведенный выше пример HTML-страницы. +{{:software:development:web:docs:learn:html:introduction_to_html:feature-list.png?|}}
    -  - Создайте новый файл в текстовом редакторе. +
    -  - Вставьте код в новый текстовый файл. +
    -  - Сохраните файл как ''index.html.''+
      
    -{{:software:development:web:docs:learn:html:introduction_to_html:screenshot_index_1.png?|}} +  Сгруппируйте информацию по темам. Какие части можно разместить на одной странице? Это похоже на метод [[software:development:web:docs:Glossary:Card_sorting|Card_sorting]].
    -<WRAP left round box 100%> +
    -*римечание.** Этот базовый HTML-шаблон также можно найти в {{ :software:development:web:docs:learn:html:introduction_to_html:index.html|репозитарии.}} +
    -</WRAP> +
    -Теперь вы можете открыть этот файл в веб-браузере и посмотреть, как выглядит визуализированный код. Отредактируйте код и обновите браузер, чтобы увидеть результат. Изначально страница выглядит так: +
    -{{:software:development:web:docs:learn:html:introduction_to_html:screenshot_index_2.png?|}} +
    -В этом упражнении вы можете редактировать код локально на своем компьютере, как описано ранее, или редактировать его в окне примера ниже (в данном случае редактируемое окно примера представляет только содержимое элемента [[software:development:web:docs:Web:HTML:Element:body|<body>]]). Оттачивайте свои навыки, выполняя следующие задачи: +
    -  * Чуть ниже открывающего тега элемента [[software:development:web:docs:Web:HTML:Element:body|<body>]] добавьте основной заголовок документа. Это должно быть заключено в [[software:development:web:docs:Web:HTML:Element:h1|<h1>]] открывающий и </h1> закрывающий теги. +
    -  * Отредактируйте содержимое абзаца, включив в него текст по теме, которая вам интересна+
    -  * Выделите важные слова жирным шрифтом, заключая их в [[software:development:web:docs:Web:HTML:Element:strong|<strong>]] открывающий и </strong> закрывающий теги. +
    -  * Добавьте ссылку в свой абзац, как объяснялось ранее в статье . +
    -  * Добавьте изображение в документ. Разместите его под абзацем, как объяснялось ранее в статье . Заработайте бонусные баллы, если вам удастся создать ссылку на другое изображение (локально на вашем компьютере или где-то еще в Интернете). +
    -Если вы допустили ошибку, вы всегда можете сбросить ее с помощью кнопки Reset.+
      
    -<html+{{:software:development:web:docs:learn:html:introduction_to_html:card-sorting.png?|}}
    -<iframe height="350" style="width100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_index_2.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html>+
      
    -====Пробелы в HTML==== +  * Составьте карту сайта. Обведите каждую страницу рамкой, и продумайте перемещения пользователя между ними. Обычно в центре оказывается главная страница, с которой можно быстро перейти на все остальные. На небольшом сайте большинство страниц помещают в главную навигацию, но не обязательно класть туда все ссылки. Также можете пометить, как выглядят элементы страниц — ссылками, списками, карточками.
    -В приведенных выше примерах вы могли заметить, что в коде содержится много пробелов. Это необязательно. Эти два фрагмента кода эквивалентны:+
      
    -<code html HTML> +{{:software:development:web:docs:learn:html:introduction_to_html:site-map.png?|}}
    -<p id="noWhitespace">Dogs are silly.</p>+
      
    -<p id="whitespace">Kats+====Самостоятельная работа: создайте свою собственную карту сайта====
      
    -    are +Применить наш метод к своему сайту. О чем он будет?
    -     +
    -        silly.</p> +
    -</code> +
    - +
    -Независимо от того, сколько пробелов вы используете внутри содержимого HTML-элемента (которое может включать один или несколько пробелов, а также разрывы строк), анализатор HTML уменьшает каждую последовательность пробелов до одного пробела при рендеринге кода. Так зачем использовать так много пробелов? Ответ: читабельность. +
    - +
    -Будет легче понять, что происходит в вашем коде, если он будет правильно отформатирован. В нашем HTML каждый вложенный элемент имеет отступ на два пробела больше, чем тот, который находится внутриВы сами можете выбрать стиль форматирования (например, сколько пробелов для каждого уровня отступов), но вам следует подумать о его форматировании. +
    - +
    -Давайте посмотрим, как браузер отображает два приведенных выше абзаца с пробелами и без них: +
    - +
    -<html> +
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_whitespace_1.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html>+
      
     <WRAP left round box 100%> <WRAP left round box 100%>
    -:!: **Примечание.** При доступе к [[software:development:web:docs:Web:API:Element:innerHTML|внутреннему коду HTML]] элементов из JavaScript все пробелы останутся нетронутыми. Это может привести к неожиданным результатамесли пробелы обрезаны браузером.+:!: **Примечание:** Сохраните свой код, он вам ещё понадобится.
     </WRAP> </WRAP>
      
    -<code javascript JS> +=====Заключение===== 
    -let a document.getElementById("noWhitespace").innerHTML; +Вы стали лучше понимать, как структурировать веб-страницу или сайтВ последней статье этого модуля мы узнаем, как отлаживать HTML.
    -document.getElementById("demo_a").innerHTML a; +
    -// "Dogs are silly." +
    -let b document.getElementById("whitespace").innerHTML; +
    -document.getElementById("demo_b").innerHTML = b; +
    -// "Kats +
    -//    are +
    -//        silly." +
    -</code>+
      
    -<html> +====Дополнительные материалы====
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_whitespace_2.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html> +
    - +
    -=====Ссылки на сущности: включение специальных символов в HTML.===== +
    -В HTML символы ''<'', ''>'', ''"'', ''%%'%%'' и ''&''являются специальными символами. Они являются частью самого синтаксиса HTML. Так как же включить в текст один из этих специальных символов? Например, если вы хотите использовать амперсанд или знак «меньше» и не интерпретировать его как код. +
    - +
    -Вы делаете это с помощью ссылок на персонажей. Это специальные коды, обозначающие символы, которые следует использовать именно в этих обстоятельствах. Каждая ссылка на символ начинается с амперсанда (&) и заканчивается точкой с запятой (;). +
    - +
    -{{tablelayout?colwidth="100px"}} +
    -|Символ|Эквивалент ссылки на символ| +
    -|<|&lt;+
    -|>|&gt;+
    -|"|&quot;+
    -|'|&apos;+
    -|&|&amp;+
    - +
    -Эквивалент ссылки на символ можно легко запомнить, поскольку текст, который он использует, можно рассматривать как меньший, чем для '<', кавычка для ' " ' и то же самое для других. Дополнительные сведения о ссылках на сущности см. в разделе [[https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references|Список ссылок на символьные сущности XML и HTML]] (Википедия). +
    - +
    -В примере ниже есть два абзаца: +
    - +
    -<code html HTML> +
    -<p>In HTML, you define a paragraph using the <p> element.</p> +
    - +
    -<p>In HTML, you define a paragraph using the &lt;p&gt; element.</p> +
    -</code> +
    - +
    -На живом выводе ниже вы можете видеть, что первый абзац пошёл не так. Браузер интерпретирует второй экземпляр <p>как начало нового абзаца. Второй абзац выглядит нормально, поскольку в нем есть угловые скобки со ссылками на символы+
    - +
    -<html> +
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_essence_1.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html> +
    - +
    -<WRAP left round box 100%> +
    -:!: **Примечание.** Вам не нужно использовать ссылки на сущности для каких-либо других символов, поскольку современные браузеры прекрасно обрабатывают фактические символы, если для [[https://developer.mozilla.org/en-US/docs/Learn/HTML/Introduction_to_HTML/The_head_metadata_in_HTML#specifying_your_documents_character_encoding|кодировки символов вашего HTML установлено значение UTF-8]]. +
    -</WRAP> +
    - +
    -=====HTML-комментарии===== +
    - +
    -В HTML есть механизм записи комментариев в коде. Браузеры игнорируют комментарии, фактически делая комментарии невидимыми для пользователя. Цель комментариев — позволить вам включать в код примечания для объяснения вашей логики или кода. Это очень полезно, если вы вернетесь к базе кода после того, как отсутствовали достаточно долго и не полностью ее помните. Аналогично, комментарии неоценимы, поскольку разные люди вносят изменения и обновления. +
    - +
    -Чтобы написать комментарий HTML, оберните его специальными маркерами ''<!--'' и ''-->''. Например: +
    - +
    -<code html HTML> +
    -<p>I'm not inside a comment</p> +
    - +
    -<!-- <p>I am!</p> --> +
    -</code> +
    - +
    -Как вы можете видеть ниже, в реальном выводе отображается только первый абзац. +
    - +
    -<html> +
    -<iframe height="350" style="width: 100%;" scrolling="no" title="Untitled" src="./demo/code-docs/pages/getting_started/getting_started_comment_1.html" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> +
    -</iframe> +
    -</html> +
    - +
    -=====Заключение===== +
    -Вы дочитали статью до конца! Мы надеемся, что вам понравился экскурс по основам HTML.+
      
    -На этом этапе вы должны понимать, как выглядит HTML и как он работает на базовом уровне. Вы также должны уметь написать несколько элементов и атрибутов. Последующие статьи этого модуля развивают некоторые темы, представленные здесь, а также представляют другие концепции языка.+[[software:development:web:docs:Web:HTML:Element:Heading_Elements|Using HTML sections and outlines (en-US)]]: Продвинутый справочник по семантическим элементам и алгоритму выделения разделов (outline algorithm) в HTML5.
      
    -Когда вы начнете больше изучать HTML, подумайте об изучении основ CSS (каскадных таблиц стилей). [[software:development:web:docs:Learn:CSS|CSS]] — это язык, используемый для стилизации веб-страниц, например изменения шрифтов или цветов или изменения макета страницы. Как вы вскоре обнаружите, HTML и CSS хорошо работают вместе. 
      
    software/development/web/docs/learn/html/introduction_to_html/document_and_website_structure.1706545207.txt.gz · Последнее изменение: 2024/01/29 19:20 — vladpolskiy