Фреймы

Команды работы с кадрами.
Вы можете разделить экран на несколько независимых оконных кадров, каждый из которых отображает отдельный HTML документ. На экране кадры представляют собой прямоугольники. В HTML используются следующие команды работы с кадрами:
<FRAMESET>, </FRAMESET> - определяют состав и размеры кадров на экране,
<FRAME>,</FRAME> - определяют HTML файл для каждого кадра,
<NOFRAMES>,</NOFRAMES> - для сообщений браузеру, не обрабатывающему кадры.

Сначала рассмотрим простейший ПРИМЕР 1:
Пусть требуется разделить экран на 2 части:
- Левый кадр, отображающий файл F1.HTM, занимает 30% экрана,
- Правый кадр, отображающий файл F2.HTM, занимает 70% экрана.
Тогда в головном файле домашней страницы следует записать:
<HTML>
<HEAD>
<TITLE>Frames Example 1</TITLE>
</HEAD>
<FRAMESET COLS= 30%,*>
<FRAME SRC="F1.htm">
<FRAME SRC="F2.htm">
</FRAMESET>
<HTML>

Рассмотрим более сложный ПРИМЕР 2: В головном файле домашней страницы запишите:
<HTML>
<HEAD>
<TITLE>Frames Example 2</TITLE>
</HEAD>
<FRAMESET COLS= 30%,*>
<FRAMESET ROWS=50%,*>
<FRAME SRC="F1.htm">
<FRAME SRC="F2.htm">
</FRAMESET>
<FRAMESET ROWS=33%,33%,*>
<FRAME SRC="F3.htm">
<FRAME SRC="F4.htm">
<FRAME SRC="F5.htm">
</FRAMESET>
</FRAMESET>
</HTML>

Формат команды FRAMESET.
Команда делит целое окно (или часть окна, определенное предыдущей командой ) на несколько вертикальных (атрибут COLS ) или горизонтальных (атрибут ROWS ) кадров. Каждый из этих кадров может определять HTML - файл, отображаемый в ней (с помощью команды ) или, соответственно, делиться дальше по тем же правилам со вложенной командой (см. Пример 2). По концу определения кадров, задаваемых командой , не забудьте записать команду , иначе они могут быть построены неправильно. Формат атрибутов COLS и ROWS.
Эти атрибуты позволяют определить размеры и количество построенных вертикально (атрибут COLS ) или горизонтально (атрибут ROWS ) кадров. Аттрибуты атрибутов задаются в одной из 3 форм:
- абсолютный размер в пикселях,
- заданный процент в общей длине или ширине,
- остаток после задания предыдущих кадров (*).
Рассмотрим распределение экранного пространства на примерах. Если записать:
<FRAMESET ROWS="150,300,150">
то браузер при просмотре выделит первому кадру 150 пикселей, второму - 300 пикселей, третьему - 150 пикселей, но высота экрана может быть не 500 пикселей. Тогда браузер пропорционально увеличит или уменьшит размеры всех кадров. Поэтому лучше записать:
<FRAMESET ROWS="25%,50%,25%">
Результат тот же, но запись соответствует фактическому распределению и легче избежать ошибок при дальнейшей корректировке размеров окон. Если же сумма процентов не равна 100 , то браузер автоматически увеличит или уменьшит размеры кадров в соответствии с размером экрана. В начале данного размера приводились примеры с использованием символа "*". Этот символ означает выделение кадру оставшейся площади. Например, команда:
<FRAMESET ROWS=" 100,*">
создает 2 кадра: верхний составляет 100 пикселей в высоту, нижний - оставшееся пространство.

Команда: <FRAMESET ROWS="100,*,100">
создает 3 кадра:
- верхний составляет 100 пикселей в высоту,
- нижний - 100 пикселей в высоту,
- средний - оставшееся пространство в центре.

Команда: <FRAMESET ROWS="*,200,*">
создает 3 кадра:
- средний - 100 пикселей в высоту,
- верхний и нижний - равного размера.
Команда: <FRAMESET ROWS=" 100,2*,*,3*">
создает 4 кадра:
- верхний составляет 100 пикселей в высоту,
- оставшаяся площадь делится на 6 равных по высоте частей:
- второму сверху кадру выделяется 2 части,
- третьему сверху кадру выделяется 1 часть,
- четвертому сверху кадру выделяется 3 части.

Формат команды FRAME.
Данная команда существует только внутри блока <FRAMESET></FRAMESET>.
Ее назначение - определение функций конкретного кадра. Команда </FRAME> практически не используется, т.к. ее функции исполняют команды /FRAMESET и следующая FRAME. Атрибут SRC задает имя HTML - файла, отображаемого в данном кадре. Атрибут NAME применяется для создания имени кадра. Тогда другой кадр может ссылаться на данный для отображения в ней своего гипертекста.

Изменим ПРИМЕР 1 так, чтобы правый кадр получил имя "VIEW_WINDOW".
<HTML>
<HEAD>
<TITLE>Frames Example 1</TITLE>
</HEAD>
<FRAMESET COLS=30%,*>
<FRAME SRC="F1.htm">
<FRAME SRC="F2.htm" NAME="VIEW_WINDOW">
</FRAMESET>
<HTML>
HTML - файл F1.HTML для левого кадра построим следующим образом:
<UL>
<LI><A HREF="Text1.htm" TARGET="VIEW_WINDOW">ТЕКСТ1</A>
<LI><A HREF="Text2.htm" TARGET="VIEW_WINDOW">ТЕКСТ2</A>
<LI><A HREF="Text3.htm" TARGET="VIEW_WINDOW">ТЕКСТ3</A>
</UL>
Теперь, если в левом кадре выбрать любую ссылку по гипертексту, то соответствующий файл TEXTx.HTML отобразится в правом кадре. Этот очень распространенный прием можно видеть во многих домашних страницах. Его преимущество в том, что на экране можно одновременно видеть и вызывающий, и вызываемый HTML - файлы и для просмотра следующего файла гипертекста достаточно нажать на соответвующую кнопку вызывающего файла.
Файл F1.HTML можно построить и следующим образом:
<BASE TARGET=" VIEW_WINDOW">
...
<UL>
<LI><A HREF="Text1.htm">ТЕКСТ1</A>
<LI><A HREF="Text2.htm">ТЕКСТ2</A>
<LI><A HREF="Text3.htm">ТЕКСТ3</A>
</UL>
Атрибут TARGET команды BASE задает кадр, выделяемый по умолчанию для отображения гипертекста. Атрибут NORESIZE применяется для того, чтобы пользователь не смог изменить размеры данного кадра на экране. Линейки прокрутки задаются с помощью атрибута SCROLLING. Здесь действуют следующие правила:
- Если атрибут SCROLLING не задан, то линейки прокрутки создаются автоматически тогда и только тогда, когда размер отображаемого текста превышает размер кадра (это относится как к размеру по вертикали, так и по горизонтали.
- Если задано SCROLLING="YES", то линейки прокрутки создаются всегда.
- Если задано SCROLLING="NO", то линейки прокрутки не создаются.
- Если задано SCROLLING="AUTO", то система работает так же, как если атрибут SCROLLING не задан.
Толщина граничной линии между кадрами может задаваться в пикселях с помощью атрибутов MARGINHEIGHT и MARGINWIDTH, если разработчика не устраивают значения, заданные по умолчанию.
Специальные значения атрибута TARGET.
В современных браузерах зарезервировано 4 специальных значения атрибута TARGET:
- _blank - браузер всегда задает это значение для нового, неименованного окна.
- _self - задается по умолчанию для всех кадров, в операторе FRAME которых нет атрибута TARGET. Все вызываемые по гиперссылке документы загружаются и отображаются в том же кадре, что и вызывающий их документ. Значение _self в явном виде не применяется до тех пор, пока мы не вводим команду BASE с атрибутом TARGET - тогда, возможно, понадобится отменить это общее назначение для какого-либо конкретного кадра.
- _parent - вызываемый по гиперссылке файл загружается в кадр или окно, которое является родительским по отношению к вызывающему. Другими словами, вызываемый файл будет расположен в том же окне, что и его "дедушка".
- _top - вызываемый по гиперссылке файл загружается в окно, содержащее ссылку, и перекрывает все кадры данного окна.

Формат команды NOFRAME.
Данная команда предназначена для браузеров, не обрабатывающих кадры. В браузере, обрабатывающем кадры, вся информация, содержащаяся между командами NOFRAME и /NOFRAME, игнорируется. В браузере, не обрабатывающем кадры, эта информация обрабатывается.
Обычно разработчики страниц, использующие кадры, встаавляют в тело команды NOFRAME сообщение о том, что данный браузер не обрабатывает кадры и сообщает рекомендации, например, перейти на Netscape 2.0 и выше.

Пример 4:
<HTML>
<HEAD>
<TITLE>EXAMPLE 4</TITLE>
</HEAD>
<FRAMESET COLS="125,*">
<FRAME SRC="F-left.htm">
<FRAME SRC="F-right.htm">
</FRAMESET>
<NOFRAME>
<BODY>
ВНИМАНИЕ! Для просмотраданного документа требуется браузер, обрабатывающий кадры, например, Netscape 2.0 и выше. Ваш браузер этим свойством не обладает. Для просмотра левого файла нажмите ЛЕВЫЙ ФАЙЛ. Для просмотра правого файла нажмите ПРАВЫЙ ФАЙЛ. </BODY>
</NOFRAME>
</HTML>

<Назад>

Хостинг от uCoz