Фреймы
Фреймы — теги html, разделяющие окна веб-обозревателя на несколько частей, в каждой из которых может быть загружена отдельная веб-страница. Страницы с фреймами не содержат никакого контента и лишь загружают другие веб-страницы, обеспечивая навигацию между ними.
Веб разработчики используют рамки очень редко.
Содержание |
[править] Элементы для создания рамок
- <FRAMESET> — вся структура документа с фреймами (заменяет
<body>
). - <FRAME> — отдельный фрейм.
- <NOFRAMES> — текст, отображаемый в том случае, если обозреватель не поддерживает фреймы.
[править] Структура разметки веб-страницы с фреймами
[править] Задание количества фреймов на странице
Основой веб-страницы с фреймами является тег <FRAMESET>
, который используется вместо тега <BODY>
. Этот тег делит страницу на несколько строк либо столбцов с помощью указываемых в нём атрибутов COLS
или ROWS
.
Предупреждение: Используются или строки, или столбцы. Одновременное применение COLS
и ROWS
внутри одного тега <FRAMESET>
не допускается. Это может привести к непредвиденным ошибкам.
Атрибуту COLS
или ROWS
присваиваются перечисляемые через запятую значения размеров фреймов. Количество значений определяет количество строк или столбцов, на которые делится окно браузера. В качестве значений могут быть указаны число, обозначающее размер в пикселях, проценты или части от оставшегося свободного пространства окна, а также знак звёздочки «*», обозначающий оставшееся пространство окна.
Код | Пояснение |
---|---|
<FRAMESET COLS="200, 300, *"> |
Разбиение на три колонки, первая шириной 200px, вторая — 300px и третья колонка займёт оставшуюся ширину. |
<FRAMESET ROWS="25%, 25%, 25%, 25%"> |
Разбиение на четыре строки, каждая из которых занимает 25% от высоты окна. |
<FRAMESET COLS="2*,3*,*"> |
Разбиение на три колонки, первая из которых занимает 2/6 ширины экрана, вторая — 3/6, а третья — 1/6. |
В зависимости от того, на какое количество строк или столбцов делится окно, внутри тега <FRAMESET>
помещается соответствующее количество тегов <FRAME>
, каждый из которых описывает, что будет загружаться в соответствующий фрейм. Также внутри тега <FRAMESET>
помещаются теги <NOFRAMES></NOFRAMES>
, в которые заключается дополнительное содержимое, предназначенное для браузеров, не поддерживающих фреймы.
Теги <FRAMESET>
допускают вложенность: вместо каждого тега <FRAME>
может быть вставлена структура <FRAMESET>
, делящая часть окна на несколько частей, внутри которой находятся свои теги <FRAME>
. К примеру, родительский <FRAMESET>
может делить окно на несколько столбцов, а вложенный — делить один из столбцов на несколько строк.[1]
[править] Параметры тега <FRAMESET>
Кроме атрибутов COLS и ROWS тег <FRAMESET>
имеет дополнительные атрибуты:
- FRAMEBORDER — отображение границ фреймов. Может принимать значения yes или no.
- BORDER — толщина границ фреймов в пикселях.
- BORDERCOLOR — цвет границ фреймов в формате #RRGGBB.[2]
[править] Описание отдельного фрейма
Каждый отдельный фрейм устанавливается с помощью тега <FRAME>
.
Параметры тега <FRAME>
:
- NAME — уникальное имя фрейма, которое используется для его идентификации. При нажатии на ссылку на странице с фреймами, если в параметре TARGET этой ссылки указано имя какого-либо фрейма, веб-страница по этой ссылке открывается в указанном фрейме.
- SRC — URL веб-страницы, которая загружается в данный фрейм.
- SCROLLING — параметр, устанавливающий отображение полос прокрутки фрейма. Может принимать значения yes, no, auto. По умолчанию принято значение auto: если содержимое страницы не влазит в окно фрейма, добавляется полоса прокрутки. При yes полоса прокрутки добавляется всегда. При no никогда не появляется, даже если содержимое не влезло.
- NORESIZE — параметр, запрещающий изменение размера фрейма. По умолчанию размеры фреймов можно изменять перетаскиванием мышкой. Добавление данного атрибута делает размеры фрейма неизменяемыми. Указывается без значений.
- MARGINWIDTH — ширина отступов фрейма слева и справа.
- MARGINHEIGHT — высота отступов фрейма сверху и снизу.[1]
- FRAMEBORDER — отображение границ фрейма. Может принимать значения yes или no.
- BORDERCOLOR — цвет границ фрейма в формате #RRGGBB.[2]
[править] Пример кода веб-страницы с фреймами
В данном примере окно браузера делится на три колонки, в первую из которых загружается страница page1.html, во вторую page2.html, а третья колонка делится на три строки, в которые соответственно загружаются страницы page3.html, page4.html и page5.html.
HTML-код страницы |
Вид окна с фреймами | |||||
---|---|---|---|---|---|---|
<HTML> <HEAD> <TITLE>Название страницы</TITLE> </HEAD> <FRAMESET COLS="*, *, *"> <FRAME NAME="col-1" SRC="page1.html"> <FRAME NAME="col-2" SRC="page2.html"> <FRAMESET ROWS="*, *, *"> <FRAME NAME="row-1" SRC="page3.html"> <FRAME NAME="row-2" SRC="page4.html"> <FRAME NAME="row-3" SRC="page5.html"> </FRAMESET> <NOFRAMES> <BODY> <P>Ваш браузер не поддерживает фреймы.</P> </BODY> </NOFRAMES> </FRAMESET> </HTML> |
|
[править] История
Фреймы появились как дополнение к стандарту HTML, введённое в браузере Netscape Navigator 2.0.
В Netscape Navigator версии 3.0 бета были добавлены атрибуты FRAMEBORDER и BORDERCOLOR для тегов <FRAMESET>
и <FRAME>
, а также атрибут BORDER для тега <FRAMESET>
.[2]
В ранних версиях браузера Internet Explorer атрибуту FRAMEBORDER допускалось присваивать только числовые значение, тогда как в Netscape возможными значениями были yes или no. Поэтому для одинакового вида страницы в разных браузерах практиковалось дублирование этого атрибута с обоими вариантами: <FRAMESET FRAMEBORDER="no" FRAMEBORDER="0">
.[3]
[править] Недостатки фреймов
У фреймов существует много минусов, к примеру плохое индексирование поисковиками и невозможность создания закладок, потому область применения фреймов очень специфична (phpMyAdmin, панель управления ISPmanager).
[править] Ссылки
[править] Примечания
- ↑ 1,0 1,1 Softservice Group HTML Фрэймы. Городской Кот (1996).
- ↑ 2,0 2,1 2,2 Kevin Werbach Краткое руководство по HTML перевод на русский Станислава Малышева, 1996 год, c_rabbit.chat.ru
- ↑ Влад Мержевич Рамки — архивная версия сайта htmlbook.ru за 2004 год. Сайт физического факультета БГПУ Республики Беларусь phys.bspu.unibel.by.
Фреймы относится к теме «HTML» |