Опубликован: 19.05.2006 | Доступ: свободный | Студентов: 10202 / 1645 | Оценка: 4.29 / 4.03 | Длительность: 22:29:00
ISBN: 978-5-94774-648-8
Лекция 16:

Фрэймы (кадры)

Элемент FRAME

<![ %HTML.Frameset; [
<!-- зарезервированные имена фрэймов начинаются с символа "_" остальные - с буквы -->
<!ELEMENT FRAME - O EMPTY              -- подокно -->
<!ATTLIST FRAME
  %coreattrs;                          -- id, class, style, title --
  longdesc    %URI;          #ПРЕДПОЛАГАЕТСЯ  -- ссылка на полное описание (дополняет title) --
  name        CDATA          #ПРЕДПОЛАГАЕТСЯ  -- имя целевого фрэйма --
  src         %URI;          #ПРЕДПОЛАГАЕТСЯ  -- источник содержимого фрэйма --
  frameborder (1|0)          1         -- установка бордюра-рамки фрэйма --
  marginwidth %Pixels;       #ПРЕДПОЛАГАЕТСЯ  -- ширина полей, в пикселах --
  marginheight %Pixels;      #ПРЕДПОЛАГАЕТСЯ  -- высота полей, в пикселах --
  noresize    (noresize)    #ПРЕДПОЛАГАЕТСЯ  -- запрещает/разрешает 
					       пользователю изменение размеров фрэйма --
  scrolling   (yes|no|auto)  auto      -- прокрутка --
  >
]]>

Определения атрибутов

name = cdata [CI]

Этот атрибут назначает имя текущему фрэйму. Это имя может использоваться как целевое в последующих ссылках.

longdesc = uri [CT]

Определяет ссылку к полному описанию фрэйма. Это описание должно дополнять краткое описание, данное атрибутом title, и может использоваться для невизуальных ПА.

src = uri [CT]

Определяет размещение первоначального содержимого фрэйма.

noresize [CI]

При наличии, этот булев атрибут сообщает ПА, что окно фрэйма не может изменять свои размеры.

scrolling = auto|yes|no [CI]

Прокрутка окна фрэйма. Возможные значения:

  • auto: это значение требует от ПА предоставлять возможность прокрутки при необходимости. Это значение по умолчанию.
  • yes: это значение требует от ПА всегда предоставлять возможность прокрутки.
  • no: это значение требует от ПА не предоставлять возможность прокрутки.

frameborder = 1|0 [CN]

Этот атрибут сообщает ПА информацию об обрамлении фрэйма. Возможные значения:

  • 1: это значение требует от ПА рисовать разделитель между этим фрэймом и каждым смежным фрэймом. Это значение по умолчанию.
  • 0: это значение требует от ПА не рисовать разделитель между этим фрэймом и каждым смежным фрэймом. Учтите, что разделители всё же будут прорисованы, если они установлены в других фрэймах.

marginwidth = pixels [CN]

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

marginheight = pixels [CN]

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

Атрибуты, определяемые в другом месте

  • id, class (идентификаторы документа )
  • title (название элемента)
  • style (инлайн-стиль)

Элемент FRAME определяет вид и содержимое одного фрэйма.

Установка начального содержимого фрэйма

Атрибут src определяет документ, первоначально отображаемый в данном фрэйме.

Следующий пример документа HTML:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
   "http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A frameset document</TITLE>
</HEAD>
<FRAMESET cols="33%,33%,33%">
  <FRAMESET rows="*,200">
      <FRAME src="contents_of_frame1.html">
      <FRAME src="contents_of_frame2.gif">
  </FRAMESET>
  <FRAME src="contents_of_frame3.html">
  <FRAME src="contents_of_frame4.html">
</FRAMESET>
</HTML>

должен создать фрэйм примерно такого вида:

------------------------------------------
|Frame 1     |Frame 3       |Frame 4       |
|            |              |              |
|            |              |              |
|            |              |              |
|            |              |              |
|            |              |              |
|            |              |              |
|            |              |              |
-------------|              |              |
|Frame 2     |              |              |
|            |              |              |
|            |              |              |
 ------------------------------------------

и указать ПА загрузить каждый файл в отдельный фрэйм.

Содержимое фрэйма не должно быть в том же документе, что и определение фрэйма.

НЕВЕРНОЕ ИСПОЛЬЗОВАНИЕ:

Следующее определение набора фрэймов HTML неверно, поскольку содержимое второго фрэйма находится в том же документе, что и определение набора фрэймов.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//RU"
   "http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
<TITLE>Документ - набор фрэймов</TITLE>
</HEAD>
<FRAMESET cols="50%,50%">
  <FRAME src="contents_of_frame1.html">
  <FRAME src="#якорь_в_этом_же_документе">
  <NOFRAMES>
  ...текст...
  <H2><A name="якорь_в_этом_же_документе">Важный раздел</A></H2>
  ...текст...
  </NOFRAMES>
</FRAMESET>
</HTML>
Визуальное представление фрэйма

В этом примере показано использование декоративных атрибутов элемента FRAME. Мы определяем, что фрэйм 1 не разрешает прокрутку. Фрэйм 2 оставляет свободное пространство вокруг содержимого (первоначально - файл изображения ), фрэйм не меняет размеров. Между фрэймами 3 и 4 бордюра нет. Бордюры будут прорисованы (по умолчанию) между фрэймами 1, 2 и 3.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
   "http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A frameset document</TITLE>
</HEAD>
<FRAMESET cols="33%,33%,33%">
  <FRAMESET rows="*,200">
      <FRAME src="contents_of_frame1.html" scrolling="no">
      <FRAME src="contents_of_frame2.gif" 
                marginwidth="10" marginheight="15"
                noresize>
  </FRAMESET>
  <FRAME src="contents_of_frame3.html" frameborder="0">
  <FRAME src="contents_of_frame4.html" frameborder="0">
</FRAMESET>
</HTML>
Ирина Кириллова
Ирина Кириллова

Нажимаю на ссылку на дополнительный материал и дополнение к информации-меня возвращает на первую страницу лекции. Подскажите, что делать? Или дополнительный материал платный?