EL
  Главная / HTML / Кадровая структура
Кадровая структура

      В каком-то смысле кадры (frames) - это окошки или рамки вокруг картинок. При вводе тега <FRAME>, Вы выделяете отдельную область на экране браузера. Другими словами браузер загружает разные страницы в разные секции, или кадры, экрана. Например, Вы можете построить страницу таким образом, что какая-то ее часть с важной информацией будет зафиксирована в верхней части экрана, а остальная часть - пролистывается обычным способом. Или еще. Можно расположить сбоку кнопки навигации, которые не перемещаются, и если кликать их мышкой, изменится только другая часть экрана, а сама полоска навигации остается неподвижной.
      Чтобы было легче разобраться с кадрами, можно провести аналогию с ячейками таблицы. Расположение кадров на экране задается почти также, как ячеек в таблице. Однако содержимое ячейки задано в коде страницы с таблицей. Текст и графика, составляющие содержимое таблицы, набираются в коде той же самой страницы, что и теги таблицы. С кадрами немного по-другому. Экран с кадрами описывается в одной странице, называемой кадровая структура (frameset), а содержимое кадра - это совсем отдельная (самостоятельная) страница, которая может находиться где угодно - в другом каталоге или вообще на другом узле сети. Кадровая структура определяет только способ организации экрана с кадрами и указывает, где находится начальное содержимое каждого кадра. Для всех кадров задаются URL, описывающие местонахождения их данных. На странице с кадровой структурой нет содержимого кадров (она описывает только кадровую структуру экрана). Когда документ загружается в кадр, Вы можете кликать мышкой на ссылке в этом документе, что вызовет появление связанных документов в других кадрах, заданных в кадровой структуре.

      Итак приступим. Для начала мы должны представить себе общий вид страницы - где и какого размера будут кадры. Затем можно подумать об их содержании.

      Сейчас будет приведен пример кадровой структуры, в смысл которого, пока, трудно вникнуть. Это не беда. Делается это для того, чтобы дальше последовательно (от тега к тегу) разобрать его.

<HTML>
<FRAMESET ROWS="100,*">
      <FRAME SRC="meny.htm">
      <FRAME SRC="text.htm" NAME="main">
</FRAMESET>
<NOFRAMES>
      <BODY>
Ваш броузер не поддерживает кадровую структуру,
если возможно, то включите режим кадров.
Также Вы просто можете посетить наши основные разделы:
первый раздел
второй раздел

      </BODY>
</NOFRAMES>
</HTML>

      Что же мы видим: первые и основные теги кадровой структуры - это теги <FRAMESET> и </FRAMESET>. Эти теги обрамляют текст, описывающий компоновку кадров. Здесь размещается информация о числе кадров, их размерах и ориентации (горизонтальной или вертикальной). У тега <FRAMESET> только два возможных параметра: ROWS=, задающий число строк, и COLS=, задающий число столбцов. Между тегами <FRAMESET> не должно быть никаких тегов или параметров, которые обычно используются между тегами <BODY>. Единственными тегами, которые могут находиться между тегами <FRAMESET>, являются теги <FRAME> и <FRAMESET>. В основном все связано с тегами <FRAME> и их параметрами. Если же Вы хотите поэкспериментировать, то можно делать и вложенные друг в друга теги <FRAMESET> аналогично тегам <TABLE>.
      Параметры ROWS= и COLS= похожи. Имейте в виду, что для каждой строки и столбца, упомянутых в теге <FRAMESET>, должен быть свой набор тегов <FRAME>.

      Как говорилось выше - параметр ROWS= тега <FRAMESET> задает число и размер строк на странице. Количество тегов <FRAME> должно соответствовать указанному числу строк. Справа от знака "равно" можно определить размер каждой строки в пикселах, процентах от высоты экрана или в относительных величинах (обычно это указание занять оставшуюся часть места). Не забывайте проставлять все кавычки, запятые и оставлять пробелы между значениями параметров. Например, следующая запись формирует экран, состоящий из трех строк: высота верхней = 200 пикселов, средней = 300 пикселов, нижней = 20 пикселов:

<FRAMESET ROWS="200, 300, 20">

      Следующий пример создает экран, на котором верхняя строка занимает 15% высоты экрана, средняя - 60%, а нижняя - 25%:

<FRAMESET ROWS="15%, 60%, 25%">

      Можно задать и относительные значения в комбинации с фиксированными, выраженными в процентах или пикселах. Следующий пример создает экран, на котором верхняя строка имеет высоту 200 пикселов, средняя - 300 пикселов, а нижняя занимает все оставшееся место:

<FRAMESET ROWS="200, 300, *">

      А можно сделать и так:

<FRAMESET ROWS="200, 2*, *">

      Число перед знаком * показывает, что соответствующая строка (в данном случае - средняя) занимает в два раза больше оставшегося места на экране, чем нижняя. Не забудьте, что значения относительны (они зависят от размера экрана пользователя).

      Столбцы COLS= задаются так же, как строки. Для них применимы те же параметры.

      Дальше в нашем примере идет тег <FRAME>. Он определяет внешний вид и поведение кадра. Этот тег не имеет парного тега. Вся суть тега <FRAME> в его параметрах. Их шесть: NAME=, MARGINWIDTH=, MARGINHEIGHT=, SCROLLING=, NORESIZE, SRC=.

      Если Вы хотите, чтобы при клике мыши на ссылке соответствующая страница отображалась в определенном кадре, то Вы должны указать этот кадр, чтобы браузер знал, куда что загружать. Кадр, в котором отображаются страницы, называется целевым (terget). В нашем примере это второй кадр и ему мы как раз присвоили имя: NAME="main". Кадры, которые не являются целевыми, именовать не обязательно. Имена целевых кадров должны состоять из букв латыни и/или чисел.

      Параметр MARGINWIDTH= действует аналогично параметру таблиц CELLPADDING=. Он задает отступ между содержимым кадра и его границами. Наименьшее его значение равно 1 пикселу.

      Параметр MARGINHEIGHT= действует так же, как и MARGINWIDTH=. Он задает поля в верхней и нижней части кадра. Наименьшее его значение также равно 1 пикселу.

      Параметр SCROLLING= отвечает за полосу прокрутки у кадра. Он может принимать значения:
YES - полоса всегда присутствует
NO - полосы никогда не будет
AUTO - полоса появится по мере надобности

      Как правило, пользователь может, перемещая границу кадра мышкой, изменять его размер. Вы можете запретить ему это делать параметром NORESIZE.

      Параметр SRC= применяется для того, чтобы определить, какая страница (на начальном этапе) должна появиться в том или ином кадре.

      Вернемся к нашему примеру. Далее в нем появляется тег <NOFRAMES>.
      У некоторых пользователей еще остались браузеры, не умеющие обращаться с кадрами. Может быть и просто: в браузере отключен режим кадров (а вдруг кто-то просто не любит кадры). Поэтому можно к кадровой структуре добавить версию (например, основных страниц) без кадров. Если пользователь с устаревшим браузером окажется на Вашей странице с кадровой структурой, то все, что находится на ней между тегами <NOFRAMES>, будет выглядеть отлично - браузер просто проигнорирует кадры. И наоборот, браузер, поддерживающий кадры проигнорирует все, что находится между тегами <NOFRAMES>.

      Осталось разобраться с параметром TARGET= тега <A HREF="URL"> ссылка </A>. Его необходимо разобрать потому, что осталось непонятным: как из одного кадра перейти по ссылке в другой кадр. Для этого и применяется этот параметр. Вот зачем в нашем примере (самый первый пример) второй кадр оказался именным: NAME="main". Допустим Вы хотите, чтобы пользователь мог, выбрав в первом кадре какой-нибудь пункт меню, открыть его во втором. Для этого в первом кадре у всех ссылок должен быть добавлен параметр TARGET="main" (то есть открыть запрашиваемый документ в кадре main). Если Вы этот параметр использовать не будете, то все ссылки будут открываться в том же кадре, где они и стоят.
      Существуют еще и так называемые "волшебные" целевые кадры. Имена таких кадров всегда начинаются с символа подчеркивания ( _ ).
      Если параметр TARGET= ссылается на:
1. "_BLANK", то документ всегда откроется в новом пустом окне.
2. "_SELF", то выбранная страница загружается в тот же кадр, где и сама ссылка.
3. "_PARENT", то выбранная страница появится в родительской кадровой структуре.
4. "_TOP", то документы появляются в отдельном окне вне кадра.

домой
на уровень вверх
наверх
Главная | HTML | Adobe Photoshop

EL
Copyright © 2000-2026