--- title: '<p>: Элемент текстового абзаца' slug: Web/HTML/Element/p tags: - Element - HTML - Web - Абзац - Веб - Группировка контента - Параграф - Справка - Элемент translation_of: Web/HTML/Element/p --- <div>{{HTMLRef}}</div> <p><span class="seoSummary"><strong>HTML-элемент <code><p></code></strong> представляет собой абзац.</span> Абзацы обычно представлены в визуальной среде в виде блоков текста, отделённых от соседних блоков пустыми строками и/или отступом в первой строке, кроме этого HTML-абзацы могут представлять собой структурную группировку однотипного содержимого, например изображений или полей формы.</p> <p>Абзацы являются <a href="/ru/docs/Web/HTML/Block-level_elements">блочными элементами</a> и, в частности, автоматически закрываются, если другой блочный элемент находится перед закрывающим тегом <code></p></code>. Смотрите ниже "Пропуск тега".</p> <div>{{EmbedInteractiveExample("pages/tabbed/p.html", "tabbed-standard")}}</div> <p class="hidden">The source for this interactive example is stored in a GitHub repository. If you'd like to contribute to the interactive examples project, please clone <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples </a> and send us a pull request.</p> <table class="properties"> <tbody> <tr> <th scope="row"><a href="/ru/docs/Web/Guide/HTML/Content_categories">Категории контента</a></th> <td><a href="/ru/docs/Web/Guide/HTML/Content_categories#Потоковый_контент">Потоковый контент</a>, <a href="/ru/docs/Web/Guide/HTML/Content_categories#Явный_контент">явный контент</a>.</td> </tr> <tr> <th scope="row">Разрешённое содержимое</th> <td><a href="/ru/docs/Web/Guide/HTML/Content_categories#Phrasing_content">Фразовый контент</a>.</td> </tr> <tr> <th scope="row">Пропуск тега</th> <td>Требуется открывающий тег. Закрывающий тег может быть пропущен, если за элементом {{HTMLElement("p")}} сразу следует элемент {{HTMLElement("address")}}, {{HTMLElement("article")}}, {{HTMLElement("aside")}}, {{HTMLElement("blockquote")}}, {{HTMLElement("div")}}, {{HTMLElement("dl")}}, {{HTMLElement("fieldset")}}, {{HTMLElement("footer")}}, {{HTMLElement("form")}}, {{HTMLElement("h1")}}, {{HTMLElement("h2")}}, {{HTMLElement("h3")}}, {{HTMLElement("h4")}}, {{HTMLElement("h5")}}, {{HTMLElement("h6")}}, {{HTMLElement("header")}}, {{HTMLElement("hr")}}, {{HTMLElement("menu")}}, {{HTMLElement("nav")}}, {{HTMLElement("ol")}}, {{HTMLElement("pre")}}, {{HTMLElement("section")}}, {{HTMLElement("table")}}, {{HTMLElement("ul")}} или другой элемент {{HTMLElement("p")}}, или если в родительском элементе больше ничего не содержится и родительский элемент не является элементом {{HTMLElement("a")}}.</td> </tr> <tr> <th scope="row">Разрешённые родительские элементы</th> <td>Любой элемент, который разрешает <a href="/ru/docs/Web/Guide/HTML/Content_categories#Потоковый_контент">потоковый контент</a> в качестве содержимого.</td> </tr> <tr> <th scope="row">Разрешённые роли ARIA</th> <td>Любые</td> </tr> <tr> <th scope="row">DOM-интерфейс</th> <td>{{domxref("HTMLParagraphElement")}}</td> </tr> </tbody> </table> <h2 id="Атрибуты">Атрибуты</h2> <p>К этому элементу применимы только <a href="/ru/docs/Web/HTML/Общие_атрибуты">глобальные атрибуты</a>.</p> <div class="note"> <p><strong>Примечание:</strong> Атрибут <code>align</code> в тегах <code><p></code> устарел и больше не должен с использоваться.</p> </div> <h2 id="Пример">Пример</h2> <h3 id="HTML">HTML</h3> <pre class="brush: html"><p>Это первый абзац текста. Это первый абзац текста. Это первый абзац текста. Это первый абзац текста.</p> <p>Это второй абзац текста. Это второй абзац текста. Это второй абзац текста. Это второй абзац текста.</p> </pre> <h3 id="Результат">Результат</h3> <p>{{EmbedLiveSample('Пример')}}</p> <h2 id="Стилизация_абзацев">Стилизация абзацев</h2> <p>По умолчанию браузеры разделяют абзацы одной пустой строкой. Альтернативные методы разделения, такие как отступы в первой строке абзаца, могут быть достигнуты с помощью {{glossary("CSS")}}:</p> <h3 id="HTML_2">HTML</h3> <pre class="brush: html"><p>Разделение абзацев пустыми строками удобнее для читателей, но их также можно разделить, сделав отступы в их первых строках. Это часто используется для экономии места, например, чтобы тратить меньше бумаги при печати.</p> <p>Письмо (имеется ввиду письменность), предназначенное для редактирования, например, школьные записи и черновики, использует для разделения как пустые строки, так и отступы. В готовых работах объединение этих двух способов считается излишним и любительским.</p> <p>В очень старом письме абзацы были разделены специальным символом: ¶, <i>pilcrow</i> (знак абзаца). В настоящее время это считается замкнутым и трудно читаемым.</p> <p>Насколько трудно читать? Посмотрите сами: <button data-toggle-text="О нет! Переключи обратно!">Используем "pilcrow" для абзацев</button> </p> </pre> <h3 id="CSS">CSS</h3> <pre class="brush: css">p { margin: 0; text-indent: 3ch; } p.pilcrow { text-indent: 0; display: inline; } p.pilcrow + p.pilcrow::before { content: " ¶ "; }</pre> <h3 id="JavaScript">JavaScript</h3> <pre class="brush: js">document.querySelector('button').addEventListener('click', function (event) { document.querySelectorAll('p').forEach(function (paragraph) { paragraph.classList.toggle('pilcrow'); }); var newButtonText = event.target.dataset.toggleText; var oldText = event.target.innerText; event.target.innerText = newButtonText; event.target.dataset.toggleText = oldText; });</pre> <h3 id="Результат_2">Результат</h3> <p>{{EmbedLiveSample('Стилизация_абзацев')}}</p> <h2 id="Проблемы_доступности">Проблемы доступности</h2> <p>Разделение контента на абзацы помогает сделать страницу более доступной. Программы чтения с экрана и другие вспомогательные технологии предоставляют шорткаты ("shortcut" - кратчайший путь), позволяющие пользователям переходить к следующему или предыдущему абзацу, позволяя им просматривать содержимое, например, как пустая строка позволяет пользователям, воспринимающим информацию визуально, пропускать абзацы.</p> <p>Использование пустого элемента <code><p></code> для добавления пустого пространства между абзацами является проблемой для людей, которые используют технологию чтения с экрана.</p> <p>Если требуется дополнительное пространство, используйте свойства {{glossary("CSS")}}, например {{cssxref("margin")}}, чтобы создать такой эффект:</p> <pre class="brush: css">p { margin-bottom: 2em; // увеличение пустого пространства после абзаца } </pre> <h2 id="Спецификации">Спецификации</h2> <table class="standard-table"> <thead> <tr> <th scope="col">Спецификация</th> <th scope="col">Статус</th> <th scope="col">Комментарий</th> </tr> </thead> <tbody> <tr> <td>{{SpecName('HTML WHATWG', 'semantics.html#the-p-element', '<p>')}}</td> <td>{{Spec2('HTML WHATWG')}}</td> <td>Нет изменений с последнего "snapshot" (снапшот или снимок - состояние сохранённое в определённый момент времени) {{SpecName("HTML5 W3C")}}</td> </tr> <tr> <td>{{SpecName('HTML5 W3C', 'grouping-content.html#the-p-element', '<p>')}}</td> <td>{{Spec2('HTML5 W3C')}}</td> <td>Атрибут <code>align</code> больше не поддерживается</td> </tr> <tr> <td>{{SpecName('HTML4.01', 'struct/text.html#h-9.3.1', '<p>')}}</td> <td>{{Spec2('HTML4.01')}}</td> <td>Первоначальное определение</td> </tr> </tbody> </table> <h2 id="Поддержка_браузерами">Поддержка браузерами</h2> <p>{{Compat("html.elements.p")}}</p> <h2 id="Смотрите_также">Смотрите также</h2> <ul> <li>{{HTMLElement("hr")}}</li> <li>{{HTMLElement("br")}}</li> </ul>