Организация бегущих строк
Теги <MARQUEE> и </MARQUEE> образуют «бегущую строку» в окне броузера и используются со следующими параметрами:
<MARQUEE [ALIGN="align"] [BEHAVIOR="behavior"] [BGCOLOR="#rrggbb"] [DIRECTION="direction"] [HEIGHT="integer"] [HSPACE="integer"] [LOOP="integer"] [SCROLLAMOUNT="integer"] [SCROLLDELAY="integer"] [VSPACE="integer"] [WIDTH="integer"]> </MARQUEE>
ALIGN задает выравнивание «бегущей строки» и может принимать одно из следующих значений: TOP, MIDDLE, BOTTOM.
BEHAVIOR определяет характер текстовой анимации и принимает значения SCROLL, SLIDE, ALTERNATE.
BGCOLOR определяет фоновый цвет (в шестнад-цатеричном формате RGB или как одно из английских названий цвета) «бегущей строки».
DIRECTION задает направление движения текста. Возможны значения LEFT и RIGHT, но по умолчанию установлено LEFT. HSPACE — целое число, указывающее размеры левого и правого полей в пикселях между внешним краем области прокрутки и окном броузера.
VSPACE — целое число, задающее размеры верхнего и нижнего полей в пикселях между внешним краем «бегущей строки» и окном броузера.
LOOP — целое число, определяющее количество повторений «бегущей строки». Может принимать значение INFINITE (бесконечно).
SCROLLAMOUNT — целое число, определяющее расстояние в пикселях, на которое текст перемещается за один шаг.
SCROLLDELAY — целое число, указывающее интервал между шагами в миллисекундах.
WIDTH — целое число, задающее ширину «бегущей строки» в пикселях. Может определяться в процентах (%).
HEIGHT — целое число, определяющее высоту «бегущей строки» в пикселях. Может также определяться в процентах (%).
Следующий пример иллюстрирует использование тегов <MARQUEE> </MARQUEE> и их атрибутов.
<HTML> <HEAD> <TITLE>Пример 3-1 </TITLE> </HEAD>
<BODY text=red>
<CENTER>
<H2>Бегущие строки </H2> <HR>
<H3> <MARQUEE BGCOLOR="Yellow" BEHAVIOR="SCROLL" DIRECTION="RIGHT" SCROLLAMOUNT="10" SCROLLDELAY="200" WIDTH="90%"> Это бегущая строка </MARQUEE>
<P> <MARQUEE BGCOLOR="Green" BEHAVIOR="SCROLL" DIRECTION="LEFT"
HEIGHT=30 SCROLLAMOUNT="10" SCROLLDELAY="100" VSPACE="40"
WIDTH="90%"> Это другая бегущая строка </MARQUEE> </H3>
<HR></CENTER></BODY>
</HTML>
Фреймы-Один из способов выдать сразу несколько файлов HTML на экран – это разбить окно на несколько разделов. Эти разделы называются фреймами или кадрами. В каждом фрейме показывается свой HTML-документ. Каждый фрейм может иметь свои полосы прокрутки, ссылки, графические изображения и т. д. Фреймы могут функционировать независимо или влиять друг на друга, используя ссылки, указывающие на другие фреймы.
1.2 Контейнер <FRAMESET>
Web-страница, которая разделена на фреймы, называется документом группы фреймов.
Документы группы фреймов содержат стандартный заголовок, задаваемый тегом HEAD, но в отличии от стандартных HTML-документов, они не содержат тега BODY. Вместо него используется контейнер (т. е. парный тег) <FRAMESET>, который применяется для определения строк и столбцов отдельных фреймов, каждый из которых обозначается тегом <FRAME>.
Если включить контейнер BODY в документ, где используется контейнер FRAMESET, то кадры будут проигнорированы программой просмотра, и информация, содержащаяся в документах, задаваемых тегами <FRAME>, не будет выведена. Будет показана только информация, содержащаяся в контейнере BODY.
Внутри контейнера (или тега)
<FRAMESET> ... </FRAMESET>
могут располагаться только теги <FRAME> или другие контейнеры FRAMESET.
7.3 Определение параметров кадров;
3. Определение параметров кадров
Тег <FRAMESET> имеет два главных атрибута: ROWS и COLS, задающих разбиение на строки и столбцы соответственно. Ниже приведен вид контейнера FRAMESET:
<FRAMESET
ROWS="список_значений"
COLS="список_значений"> ... </FRAMESET>
Можно определить любое число рядов и стол-бцов; необходимым условием является указание хотя бы одного из атрибутов ROWS или COLS.
Кадр не может быть единственным: если вы определили единственную строку и единственный столбец, то программа просмотра проигнорирует контейнер FRAMESET, и экран останется пустым. Если определены, по крайней мере, две строки или два столбца, другой атрибут может быть опущен (ему по умолчанию будет присвоено значение, равное 100%).
Значение атрибута ROWS или COLS представ-ляет собой строку, содержащую список значений в пикселях, процентах или относительных единицах, разделенных запятыми. Количество рядов или столбцов кадров определяется числом этих значений.
Пример:
Для задания сетки кадров из трех строк, высота которых 100, 240 и 140 пикселей соответственно, используют тег
<FRAMESET ROWS="100,240,140">
Задание высоты строки в пикселях, однако, является плохим стилем, так как при этом не учитывается тот факт, что окна броузеров могут иметь самую разную величину. В абсолютных единицах стоит указывать размеры кадра лишь для размещения небольших изображений, в остальных же случаях лучше пользоваться относительными величинами.
7.4 Тег <FRAME>;
4. Тег <FRAME> Тег <FRAME> определяет отдельный кадр. Он должен располагаться внутри контейнера <FRAMESET>.
Пример:
<FRAMESET ROWS="*, 2*">
<FRAME . . . >
<FRAME . . . >
</FRAMESET>
Заметьте, что этот тег не является контейнером и, в отличие от тега <FRAMESET>, не имеет закрывающего тега.
Число тегов <FRAME> обязательно должно быть равно числу кадров, определенных в теге <FRAMESET>. В нашем примере определено два кадра, поэтому контейнер содержит соответствен-ное количество тегов <FRAME>. Пока кадры ничем не заполнены.
В HTML тег <FRAME> располагает шестью атрибутами: SRC, NAME, MARGINWIDTH, MARGINHEIGHT, SCROLLING и NORESIZE. Вот синтаксис использования этих атрибутов:
<FRAME SRC="URL" NAME="имя_окна" SCROLLING=yes|no|auto MARGINWIDTH="значение" MARGINHEIGHT="значение" NORESIZE>
Использовать все атрибуты необязательно. Чаще всего вы будете пользоваться только одним атрибутом – SRC. Строка
<FRAME SRC="URL">
определяет URL-адрес содержимого кадра. Это обычно файл HTML-документа, расположенный в том же каталоге, что и документ, содержащий контейнер FRAMESET, например:
<FRAME SRC="first.html">
Этот документ должен быть полноценным HTML-документом, т. е. содержать все обязательные части (контейнеры HTML, HEAD, BODY и т. д.).
В случае, если программа просмотра не сможет найти указанный файл, кадр не будет построен, и броузер выведет сообщение об ошибке. Если же в теге вовсе не указан атрибут SRC, кадр будет создан и оставлен пустым.
Текст, заголовки, графика и другие элементы не могут напрямую включаться в документ с кадрами. Все они должны вводиться только с помощью указания URL-адреса элемента. Если контейнер FRAMESET содержит "инородное тело", оно будет выведено, а кадры полностью проигнорированы.
Атрибут MARGINWIDTH=n задает размещение слева и справа от содержимого кадра областей свободного пространства высотой по n пикселей, а MARGINHEIGHT=n, соответственно, сверху и снизу.
Значения этих атрибутов всегда должны указывать-ся в абсолютных значениях (пикселях). Так, тег
<FRAME MARGINHEIGHT="5"
MARGINWIDTH="7">
создаст внутреннюю рамку на верхней и нижней границах кадра шириной в 5 пикселей, а на левой и правой границе – шириной в 7 пикселей. Внутри этой рамки данные выводиться не будут. Эти атрибуты не имеют ничего общего с рамкой кадра, определяемой броузером, либо задаваемой при помощи атрибута BORDER.
К построенным вами кадрам автоматически добавляются полосы прокрутки, если содержание кадра больше его размера. Иногда это может нарушить эстетику страницы, поэтому в HTML предусмотрен атрибут SCROLLING тега <FRAME>, имеющий следующий формат:
<FRAME SCROLLING="yes|no|auto">
Этот атрибут может принимать одно из трех значений: yes, no и auto. Последнее значение подразу-мевается по умолчанию, т. е. когда атрибут не опре-делен. Если указано значение yes, полоса прокрутки появится в любом случае, значение no запрещает появление полосы.
К построенным вами кадрам автоматически добавляются полосы прокрутки, если содержание кадра больше его размера. Иногда это может нарушить эстетику страницы, поэтому в HTML предусмотрен атрибут SCROLLING тега <FRAME>, имеющий следующий формат:
<FRAME SCROLLING="yes|no|auto">
Этот атрибут может принимать одно из трех значений: yes, no и auto. Последнее значение подразу-мевается по умолчанию, т. е. когда атрибут не опре-делен. Если указано значение yes, полоса прокрутки появится в любом случае, значение no запрещает появление полосы.
Пример:
<FRAMESET BORDERCOLOR="red" ROWS="*,*">
<FRAME SRC="first.html"
BORDERCOLOR="#FF00FF">
<FRAME SRC="first.html">
</FRAMESET>
Здесь атрибут BORDERCOLOR тега <FRAMESET> устанавливает красный цвет рамок ("red"), однако такой же атрибут тега <FRAME> отменяет это значение и определяет цвет рамки первого кадра как фиолетовый. В результате второй кадр, в котором цветовой атрибут не определен, будет иметь часть рамки фиолетовой (на стороне, смежной с первым кадром), а остальную часть рамки – красной.
Если же в двух смежных кадрах определены свои собственные атрибуты BORDERCOLOR, то ни один из них не будет иметь силы. Цвет их рамок будет определяться соответствующим атрибутом контей-нера FRAMESET.
7.5 Организация ссылок;
Теперь об управлении навигацией по сайту. Для определения имени кадра служит атрибут NAME. Например, строка <FRAME NAME="frame1"> создает кадр с именем "frame1", на который можно сделать гипертекстовую ссылку следующим образом:
<A HREF="putfirst.html" TARGET="frame1">
Нажмите сюда </A>для перехода на 1-страницу
Атрибут TARGET гипертекстовой ссылки содер-жит имя кадра. При активизации этой ссылки содер-жимое кадра frame1, т. е. файл first.html, размещен-ный в нем при создании, будет заменен файлом putfirst.html.
Если атрибут TARGET отсутствует, файл putfirst.html будет выведен в том же окне или кадре, где находится указатель ссылки. Атрибут TARGET как раз и пред-назначен для указания "цели" – кадра, в котором дол-жен быть размещен файл, определенный атрибутом HREF. Этот принцип замены файлов в одном кадре при управлении этим процессом из другого кадра и лежит в основе навигации по сайту. Кадру обязатель-но нужно присвоить имя, иначе на него нельзя будет ссылаться. Поэтому всем кадрам, содержание которых планируется менять, должны быть даны правильные имена. Имена кадров должны начинаться с алфавит-но-цифрового символа. Ваши имена не должны начи-наться с символа подчеркивания, так как он является первым символом зарезервированных имен кадров, перечисленных в таблице.
Теперь создадим простенький электронный учебник, для этого создаем файл
frame1.htm в папке FRAME5 и запишем в нем следующие теги:
<HTML> <HEAD> <TITLE> Простой документ с
фреймами</TITLE> </HEAD>
<FRAMESET cols="25%, *">
<FRAME
NAME="ogl“ SRC="Левое_окно.htm"
MARGINWIDTH=1 MARGINHEIGHT=1
SCROLLING=auto>
<FRAME
NAME="mycontent" SRC="Правое окно.htm"
MARGINWIDTH=10 MARGINHEIGHT=1
SCROLLING=auto>
</FRAMESET>
</HTML>
После этого, создаем файл "Левое_окно.htm" и заполним его следующим образом:
<HTML> <HEAD> <TITLE>Простой документ с содержанием
данных</TITLE> </HEAD>
<BODY> <P align=center> Содержание </P>
<FONT SIZE =2>
<A HREF="Глава 1.htm" target=mycontent>Глава 1</A><BR>
<A HREF="Глава 2.htm" target=mycontent>Глава 2</A> <BR>
<A HREF="Глава 3.htm" target=mycontent>Глава 3</A> <BR>
<A HREF="Глава 4.htm" target=mycontent>Глава 4</A> <BR>
<A HREF="Глава 5.htm" target=mycontent>Глава 5</A> <BR>
<A HREF="Глава 6.htm" target=mycontent>Глава 6</A> <BR>
<A HREF="Глава 7.htm" target=mycontent>Глава 7</A> <BR>
<A HREF="Глава 8.htm" target=mycontent>Глава 8</A> <BR>
<A HREF="Глава 9.htm" target=mycontent>Глава 9</A>
</FONT> <BR>
</BODY>
</HTML>
Создаем файл "Правое окно.htm" и заполним его следующим образом:
<HTML>
<HEAD>
<TITLE> Простой документ с содержанием
данных
</TITLE>
</HEAD>
<BODY text=blue> <P> <BR> <BR>
Здесь будет текст выбранной главы <BR> по
содержанию левого окна
</BODY>
</HTML>
Создадим HTML-файлы, содержащие тексты нашего учебника, их 9: "Глава 1.htm“, "Глава 2.htm“, ..., "Глава 9.htm“.
В итоге получим следующий электронный учебник: