Блочные и строчные элементы на странице




Элементы (теги) HTML страницы делятся на блочные и строчные.

Блочные элементы предназначены для разметки крупных блоков текста (заголовки, абзацы, списки) и создания разметки страницы (сетки).

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

1. До и после блочного элемента существует перенос строки (то есть он всегда один находится на новой строке).

2. Блочным элементам можно задавать ширину, высоту, внутренние и внешние отступы.

3. Занимают всё доступное пространство по горизонтали.

К блочным элементам относятся такие теги как: <p>, <h1> и другие.

Еще один важный и распространённый блочный тег — это тег <div>, который обозначает просто «блок» или «прямоугольный контейнер». Этот тег обычно используется для создания разметки страницы (сетки). С ним мы познакомимся позже.

Строчные элементы необходимы для оформления текста на уровне небольших фраз и отдельных слов.

Строчные элементы располагаются друг за другом в одной строке, при необходимости (если не хватает места) строка переносится. Особенности строчных элементов:

1. До и после строчного элемента отсутствуют переносы строки.

2. Ширина и высота строчного элемента зависит только от его содержания, задать размеры с помощью CSS стилей нельзя.

3. Можно задавать только горизонтальные отступы.

К строчным элементам относятся такие теги как: <a>, <strong>, <em> и другие.

Дочерние, родительские элементы и потомки

А сейчас давайте подумаем, а можно ли писать один тег внутри другого, и не будет ли это ошибкой?

Элементы можно вкладывать друг в друга. Такие элементы называются «вложенные» (дочерние) по отношению к родителю.

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

<!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <div> <p><em>Далеко-далеко</em> за словесными горами в стране.</p> <p>Безопасную <strong><em>осталось текста</em> они вопрос</strong> строчка маленький ipsum!</p> </div> </body> </html>

В данном примере применяется несколько контейнеров, которые в коде располагаются один в другом.

Нагляднее это видно на дереве элементов, так называется структура отношений тегов документа между собой.

На этом рисунке в удобном виде представлена вложенность элементов и их иерархия. Здесь дочерним элементом по отношению к тегу <div> выступает тег <p>. Вместе с тем тег <strong> не является дочерним для тега <div>, поскольку он расположен в контейнере <p>, в данном случае тег <strong> является потомком по отношению к тегу <div>.

Теги контейнеры и семантические элементы

Давайте знакомится с элементами HTML которые позволяют рисовать сетку любого формата и придавать различным областям семантический смысл (логическую структуру сайта для браузера и поисковиков).

Семантические элементы HTML5 доступно описывают свой смысл или назначение как для браузеров, так и для веб-разработчиков.

До появления стандарта HTML5 вся разметка страниц осуществлялась преимущественно с помощью элементов <div>. С их помощью в HTML-документе размещали верхние и нижние колонтитулы, боковые панели, навигацию и многое другое.

Стандарт HTML5 предоставил новые элементы для структурирования, группировки контента и разметки текстового содержимого. Новые семантические элементы позволили улучшить структуру веб-страницы, добавив смысловое значение заключенному в них содержимому (было <div id="header">, стало <header>).

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

<div> </div>

div — является базовым контейнером для элементов.

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

Этот тег изначально был предназначен для деления веб-страницы на логические фрагменты, такие как нижний колонтитул (подвал), боковое меню и т.п. Но с появлением новой семантической разметки веб-страниц с помощью HTML5, необходимость в таком повсеместном использовании тега отпала.

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

Тег <div> следует применять только в случае, если для выделения области не подходит никакой другой элемент страницы.

<div> <h2>Далеко-далеко.</h2> <img src="img/picture.png" alt="Изображение"> <p>Далеко-далеко за словесными горами в стране гласных и согласных.</p> </div>

<header> </header>

Группирует вводные и навигационные элементы, не является обязательным.

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

В HTML-документе может содержаться одновременно несколько элементов <header> и они могут располагаться в любой части страницы.

Элемент <header> нельзя помещать внутрь элементов <footer>, <address> или другого элемента <header>.

<header> <h1>Site description</h1> <nav> <ul> <li><a href="">About</a> <li><a href="">Forum</a> <li><a href="">Download</a> </ul> </nav> </header>

<nav> </nav>

Предназначен для создания блока навигации веб-страницы или всего веб-сайта, при этом не обязательно должен находиться внутри тега <header>.

На странице может быть несколько элементов <nav>.

Не заменяет теги <ul> или <оl>, он просто их обрамляет.

Не все группы ссылок на странице должны быть обёрнуты <nav>, этот элемент предназначен в первую очередь для разделов, которые состоят из главных навигационных блоков.

<nav> <ul> <li><a>...</a></li> <li><a>...</a></li> <li><a>...</a></li> </ul> </nav>

<article> </article>

Используется для группировки записей — публикаций, статей, записей блога, комментариев.

Представляет собой независимый обособленный блок, предназначенный для многократного использования, как правило, начинается с заголовка. Может дублироваться на других страницах сайта и содержать внутри другие элементы <article>, которые по содержанию имеют близкое отношение к содержанию внешней статьи. Если на странице присутствует только одна статья с заголовком и текстовым содержимым, она не нуждается в обёртке элементом <article>.

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

<article> <header> <h2>...</h2> </header> <p>...</p> <footer> <a href="">…</a> </footer> </article>

<section> </section>

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

Не является блоком-оберткой, для этих целей уместнее использовать элемент <div>.

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

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

<article> <h2>...</h2> <section> <h3>...</h3> <p>...</p> </section> <section> <h3>...</h3> <p>...</p> </section> <p>...</p> </article>

<aside> </aside>

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

Чаще всего элемент позиционируется как боковая колонка (как в книгах) и включает в себя группу элементов: <nav>, цифровые данные, цитаты, рекламные блоки, архивные записи.

Не подходит для блоков, просто позиционированных в стороне.

<aside> <h2>...</h2> <p>...</p> </aside> <aside> <h2>...</h2> <p>...</p> <blockquote> <p>...<cite>...</cite>...</p> <p>...</p> </blockquote> </aside>

<footer> </footer>

Представляет собой нижний колонтитул содержащей его секции или корневого элемента.

Обычно содержит информацию об авторе статьи, данные о копирайте и т.д.

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

В одном веб-документе может быть несколько элементов <footer>. Как каждая страница, так и каждая статья может иметь свой элемент <footer>, более того, <footer> можно поместить в элемент <blockquote>, чтобы указать источник цитирования.

<footer> <address>...</address> <small>@2019...</small> </footer>

<main> </main>

Элемент <main> представляет основное содержимое документа (содержимое элемента <body>).

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

Элемент <main> не может быть потомком таких элементов как <article>, <aside>, <footer>, <header> или <nav>

<body> <header> … </header> <main> <h1>Следы невиданных зверей</h1> <p>История о том, как возле столовой появились загадочные розовые слоны… </p> </main> <footer> … </footer> </body>

<figure> </figure>

Элемент <figure> представляет автономный контент, являющийся самостоятельным элементом основного потока. Элемент может быть перемещен из основного содержимого документа в боковую колонку или приложение, не затрагивая поток документа.

С помощью элемента <figure> можно добавлять краткие характеристики к иллюстрациям, фотографиям, диаграммам, фрагментам кода и т.д.

<figcaption> </figcaption>

Элемент <figcaption> — потомок элемента <figure>, не принадлежит ни к одной категории контента. Элемент является блочным, по ширине равен ширине элемента <figure>.

<figure> <img src="picture.jpg" alt="Осень"> <figcaption>Осенний лес</figcaption> </figure>

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-11-19 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: