Перейти на главную   
  helloworld.ru - документация и книги по программированию  
helloworld.ru - документация и книги по программированию
    главная     хостинг    
Поиск по сайту:  
Смотрите также
Языки программирования
C#
MS Visual C++
Borland C++
C++ Builder
Visual Basic
Quick Basic
Turbo Pascal
Delphi
JavaScript
Java
PHP
Perl
Assembler
AutoLisp
Fortran
Python
1C

Интернет-технологии
HTML
VRML
HTTP
CGI
FTP
Proxy
DNS
протоколы TCP/IP
Apache

Web-дизайн
HTML
Дизайн
VRML
PhotoShop
Cookie
CGI
SSI
CSS
ASP
PHP
Perl

Программирование игр
DirectDraw
DirectSound
Direct3D
OpenGL
3D-графика
Графика под DOS

Алгоритмы
Численные методы
Обработка данных

Сис. программирование
Драйверы

Базы данных
MySQL
SQL

Другое

Хостинг


Друзья
demaker.ru
Реклама

Лучший хостинг. Аренда серверов




helloworld.ru

Кадры

Понятие кадров
Контейнер <FRAMESET>. Определение параметров кадров
Тэг <FRAME> и его атрибуты
Рамка кадра
Определение имени кадра и ссылки на кадр
Как правильно дать имя кадру

Понятие кадров

Впервые появившиеся в программе Netscape Navigator 2.0 кадры HTML помогают разбить страницу на независимые (даже с прокруткой) окна, выводящие информацию различных типов. Кадры во многом похожи на таблицы HTML, но, в отличие от последних, не только организовывают данные, но и размещают их на экране дисплея. Они делят окно браузера на отдельные независимые панели, каждая их которых выводит свой файл. Другими словами, каждая такая панель представляет собой “мини-браузер”.

Контейнер <FrameSet>. Определение параметров кадров

Кадр должен быть расположен в контейнере FRAMESET, который занимает место контейнера BODY. HTML документ, имеющий структуру FRAMESET, не имеет структуры BODY, и наоборот.

Парный тэг <FRAMESET></FRAMESET> используется при определении каждого кадра. Внутри этого контейнера могут располагаться только тэг <FRAME> или другие контейнеры FRAMESET.

Тэг <FRAMESET> имеет два главных атрибута: ROWS и COLS. Общий вид контейнера FRAMESET выглядит следующим образом.

<FRAMESET ROWS= “vаlue_list” COLS= “value_list”> </FRAMESET>.

Можно определить любое количество рядов или столбцов; необходимым условием является указание хотя бы одного из атрибутов ROWS или COLS.

Строка “vаlue_list” представляет собой список значений в пикселах, процентах или относительных единицах, разделенных запятыми. Количество рядов или столбцов кадров определяется числом этих значений. Например

<FRAMESET ROWS= “100, 240, 140”>

указывает на сетку кадров из трех рядов, высота которых 100, 240 и 140 пикселов соответственно.

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

<FRAMESET ROWS= “25%, 50%, 25%”>

что создает три кадра по 25%, 50% и 25% от высоты окна браузера. Относительно точности указания в процентах можно не волноваться: если сумма не равна 100%, масштаб кадров будет пропорционально изменен.

Задание параметров кадров в относительных единицах выглядит следующим образом:

<FRAMESET COLS= “*, *2, *3”>

где символ * означает пропорциональное деление окна программы просмотра. Таким образом, окно будет разделено на три вертикальных кадра, первый из которых будет иметь ширину в 1/6, второй в 2/6 и третий в 3/6 от ширины окна браузера. Единица при указании относительных значений может быть опущена.

Указание значений атрибутов ROWS и COLS может быть и смешанным, например:

<FRAMESET COLS= “100, 25%, *, *2”>

Здесь первому кадру присвоено абсолютное значение в 100 пикселов по ширине, второму - 25% от ширины окна. Оставшееся пространство делится между третьим и четвертым кадрами в пропорции 1/3 к 2/3.

Приоритеты в указаниях значений атрибутов следующие: в первую очередь слева направо отводится место для кадра с абсолютным значением, затем - для кадра со значением в процентах, а в последнюю очередь - для кадров с относительными величинами.

При определении обоих атрибутов, например:

<FRAMESET ROWS= “*, *2, *” COLS= “2*, *”>

получается сетка кадров из трех рядов и двух столбцов. Первый и последний ряды занимают по 1/4, второй ряд - половину от высоты окна. Первый столбец размещается на 2/3, а второй - на 1/3 окна браузера.

Контейнеры FRAMESET могут вкладываться друг в друга.

Тэг<Frame> и его атрибуты

Тэг <FRAME> определяет отдельный кадр. В общем виде определение кадров идет слева направо и сверху вниз. Тэг <FRAME> должен располагаться внутри контейнера FRAMESET. Например:

<FRAMESET ROWS= “*, 2*”>
<FRAME>
<FRAME>
< /FRAMESET >

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

Тэг <FRAME> располагает шестью атрибутами: SRC, NAME, MARGINWIDTH, MARGIMHEIGHT, SCROLLING и NORESIZE.

Синтаксис использования этих атрибутов следующий:

<FRAME SRC=“url” NAME=“window_name” MARGINWIDTH=“value” MARGIMHEIGHT=“value” SCROLLING=YES|NO|AUTO NORESIZE>

“url” определяет URL - адрес содержимого кадра. Это обычно файл HTML - документа, расположенный в том же каталоге, что и документ, содержащий контейнер FRAMESET.

Атрибуты MARGINWIDTH и MARGIMHEIGHT позволяют контролировать ширину внутренней границы кадра. Значения атрибутов задаются в абсолютных цифрах (пикселах), например:

<FRAME MARGINWIDTH=“5” MARGIMHEIGHT=“7”>

что создает внутреннюю рамку на верхней нижней границе кадра шириной в 5 пикселов, а на левой и правой границе - шириной в 7 пикселов. Внутри этой рамки данные выводиться не будут. Эти атрибуты не имеют ничего общего с рамкой кадра, определяемой браузером либо задаваемой при помощи атрибута BORDER.

К построенным кадрам автоматически добавляются полосы прокрутки, если содержание кадра больше его размера. Иногда это может нарушить эстетику страницы, поэтому предусмотрен атрибут SCROING, принимающий одно из трех значений: YES, NO и AUTO. Последнее значение подразумевается по умолчанию. Если указано значение YES, полоса прокрутки появится в любом случае, значение NO запрещает появление полосы.

По умолчанию размеры кадров могут легко изменяться читателями, однако понятно, что это может сильно нарушить авторский замысел. В этом случае нужно использовать атрибут NORESIZE, запрещающий возможность “перекраивания” страницы.

Рамка кадра

Для определения рамки кадра в HTML существуют три атрибута: BORDER, FRAMEBORDER и BORDERCOLOR. Первый из этих атрибутов используется только с тэгом <FRAMESET> и устанавливает ширину всех рамок для всех кадров контейнера. Эта величина указывается в пикселах. Если атрибут равен нулю, все кадры контейнера будут без рамок.

Атрибут FRAMEBORDER используется с тэгами <FRAMESET> и <FRAME> и может принимать два значения: YES и NO. В первом случае рамка имеет трехмерную форму, во втором случае рамка невидима, то есть имеет цвет фона окна браузера, устанавливаемого по умолчанию.

По умолчанию атрибут FRAMEBORDER имеет значение YES. Рамка кадра будет невидимой, если значение NO установлено для всех кадров, смежных с ним.

Атрибут BORDERCOLOR может использоваться с тэгами <FRAMESET> и <FRAME>. Ему может быть присвоено стандартное имя цвета или RGB - значение.

Определение имени кадра и ссылки на кадр

Для определения имени кадра служит атрибут NAME. Например, строка

<FRAME SRC= “info.htm” NAME= “Joe”>

создает кадр по имени “Joe”, на который можно сделать гипертекстовую ссылку следующим образом:

<A HREF= “moreinfo.htm” TARGET= “Joe”> Click here to jump to Joe </A>

Атрибут TARGET гипертекстовой ссылки содержит имя кадра. При активизации этой ссылки содержимое кадра “Joe”, т.е. файл info.htm, размещенный в нем при создании, будет заменен файлом moreinfo.htm. Заметьте, что если атрибут TARGET отсутствует, файл moreinfo.htm будет выведен в том же окне или кадре, где находится указатель ссылки. Атрибут TARGET как раз и предназначен для указания “цели” - кадра, в котором должен быть размещен файл, определенный атрибутом HREF. Этот принцип замены файлов в одном кадре при управлении этим процессом из другого кадра и лежит в основе навигации по сайту.

Как правильно дать имя кадру

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

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

Имя

Назначение

_blank

Загружает указанный файл в новое окно без названия

_self

Загружает указанный файл в кадр, откуда делается вызов

_parent

Загружает указанный файл в старший (родительский) кадр сетки кадров. Если такой кадр не определен, это результат действия аналогичен _sеIf

_top

Загружает указанный файл в полное окно, разрушая всю структуру кадров

Ниже приведены несколько примеров, поясняющих использование зарезервированных имен кадров.

Если в кадре определена ссылка

<A HREF=stuff.htmTARGET=_blank>

то ее активизация приведет к открытию нового, не имеющего названия, окна браузера и выводу в него содержимого файла stuff.htm. Это может быть новый HTML-документ, либо определение новой сетки кадров.

Строка

HREF=stuff.htm TARGET=_self>

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

Если кадр содержит ссылку

HREF=stuff.htm TARGET=_parent>

то при активизации ссылки сетка кадров, к которой принадлежит вызывающий кадр, будет заменена содержимым stuff.htm.

И, наконец, строка

<А HREF=stuff.htm TARGET=_top>

означает, что при активизации ссылки все окно браузера будет заменено содержимым stuff.htm.


[ Оглавление ]









helloworld.ru © 2001-2021
Все права защищены