Тег <frame>
Описание
Тег <frame>
устарел в HTML5 и полностью удален из спецификации. Ранее использовался для создания отдельных областей (фреймов) в составе frameset. Вместо него используйте современные альтернативы.
Важно! Этот элемент больше не поддерживается в современных стандартах HTML.
Историческое использование (не рекомендуется):
<!-- Устаревший синтаксис -->
<frameset cols="25%,75%">
<frame src="menu.html" name="menu">
<frame src="content.html" name="content">
</frameset>
<!-- Вариант 1: Iframe -->
<iframe src="widget.html" class="side-panel"></iframe>
<!-- Вариант 2: CSS + AJAX -->
<div class="layout">
<nav id="menu"><!-- Загружается через AJAX --></nav>
<main id="content"><!-- Основное содержимое --></main>
</div>
<style>
.layout { display: flex; }
nav { width: 25%; }
main { width: 75%; }
</style>
Проблемы фреймов:
- Нарушают модель навигации браузера
- Плохо индексируются поисковыми системами
- Создают проблемы с доступностью
- Не адаптивны для мобильных устройств
- Устаревший подход к верстке
Современные замены:
Потребность | Альтернатива |
---|---|
Встроенное содержимое | <iframe> (с ограничениями) |
Фиксированные области | CSS Grid/Flexbox + компоненты |
Динамическая загрузка | AJAX/SPA-фреймворки |
Совет: Для современных веб-приложений используйте компонентный подход (React, Vue, Angular) или серверные шаблоны вместо фреймов.
Для миграции с фреймов:
- Замените <frameset> на семантическую HTML-структуру
- Перенесите логику навигации на JavaScript-роутер
- Реализуйте шаблонизацию на стороне сервера или клиента
- Используйте CSS для макетирования вместо фреймов
Тег <frame>
больше не должен использоваться в современной веб-разработке.
Атрибуты
frameborder | Определяет отображение границы фрейма (0|1) |
longdesc | URL документа с длинным описанием содержимого |
marginheight | Отступы сверху/снизу содержимого в пикселях |
marginwidth | Отступы слева/справа содержимого в пикселях |
name | Имя фрейма для использования в качестве цели ссылок |
noresize | Запрещает пользователю изменять размер фрейма |
scrolling | Управление полосами прокрутки (yes|no|auto) |
src | URL документа для отображения во фрейме |
accesskey | Горячая клавиша для активации элемента |
class | CSS-классы для стилизации элемента |
id | Уникальный идентификатор элемента |
style | Инлайновые CSS-стили элемента |
title | Всплывающая подсказка для элемента |
Поддержка браузерами
![]() |
![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|
3.0 | 1.0 | 4.0 | 1.0 | 1.0 |