Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
IP-LW10_freymi.doc
Скачиваний:
1
Добавлен:
25.11.2019
Размер:
324.1 Кб
Скачать
  1. Створення простої сторінки з фреймами

Побудуємо сторінку із двома фреймами. Задамо зліва фрейм змісту з заголовками статей, а праворуч помістимо сторінку із самими статтями. Зробимо так, що коли користувач клацає мишкою на посиланні в тій частині екрана, де знаходиться зміст, сама стаття з'являється в правому фреймі. Це основний, найбільш поширений спосіб використанняфреймів.

Задання фреймової структури

Синтаксис та використання http://htmlbook.ru/html/frameset , http://htmlbook.ru/html/frame

Для початку ми повинні уявити собі загальний вигляд сторінки - де розташувати фрейми і якого вони будуть розміру. Потім можна подумати про їхній зміст. Нижче наводиться код простий фреймової структури з використанням тега <FRAMESET> та Рис 1. відображення його браузером. Зверніть увагу: сторінка з фреймовою структурою не містить тега <ВОDY>. 

<HTML>

<HEAD>

<TITLE> Приклад фреймів </TITLE>

</HEAD>

<FRAMESET COLS="25%, 75%">

<FRAME SRC="menu.html">

<FRAME SRC="main.html" NAME="main">

</ FRAMESET>

</ HTML>

Рис. 1.

В результаті ми отримали екран, розділений на два вікна. Ліве вікно займає 25% екрану і містить сторінку з назвою menu.html. Вікно праворуч займе 75% екрану і містить файл main.html.

 При цьому файл menu.html містить <h3>ФРЕЙМ № 1 </h3>, а файл main.html містить <h3>Фрейм № 2</h3> .

Далі : <FRAME SRC="main.html" NAMЕ="main"> означає, що фрейм під ім'ям main буде містити сторінку main.html. Зауважимо, що оскільки ми не збираємося показувати в лівому фреймі ніяких сторінок, крім menu.html,нам не потрібно його називати.

Підготовка вмісту фрейма

Тепер завантажимо фрейми із умістом. Задамо сторінку menu.html в лівому фреймі, де ми збираємося клацати мишею, перемикаючись між двома сторінками в правому фреймі.Menu.html - це звичайна НТМL-сторінка, побудована як зміст. Насправді ми можемо взяти готову сторінку зі змістом і використовувати її. Майте на увазі, що цей фрейм вузький і високий, так що сторінка, яка буде в нього завантажуватися, повинна бути спроектована відповідним чином. Тепер ми повинні визначити, де будуть з'являтися інші сторінки при клацанні мишкою на посиланні. Оскільки ми хочемо, щоб вони відображалися в правому фреймі, додамо атрибут ТАRGET (TARGЕТ = "main") у тег посилання. Це означає, що, коли користувач клацає на посиланні, що викликається сторінка з'являється у фреймі main. Ми відображаємо всі сторінки у фреймі main, тому давайте додамо атрибут ТАRGЕТ = "main" в усі теги посилань у змісті. Якщо ми не визначимо атрибут ТАRGЕТ, то сторінка з'явиться там, де ми клацнули мишкою, - в лівому фреймі.

Підготовка фрейму main

Правий фрейм main буде містити самі HTML-сторінки. Завдання - спроектувати їх так, щоб вони добре виглядали в меншому, ніж зазвичай, вікні, тому що частина екрана буде зайнята лівим кадром змісту. Але більше ці сторінки нічим не примітні.

Макетування фреймів - тег <FRAMESET>

Теги <FRAMESET> обрамляють текст, що описує компонування фреймів. Тут розміщується інформація про число фреймів, їхні розміри і орієнтації (горизонтальну або вертикальну). У тега <FRAMESET> тільки два можливих атрибути: ROWS, що задає число рядків, і СОLS, що задає число стовпців. Між тегами <FRAMESET> не потрібно вказувати тег <ВОDY>. Між тегами <FRAMESET> не повинно бути ніяких тегів або атрибутів, які зазвичай використовуються між тегами <ВОDY>. Єдиними тегами, які можуть перебувати між тегами <FRAMESET> і </ FRAMESET>, є теги <FRAME>, <FRAMESET>. Це спрощує задачу. В основному все пов'язано з тегами <FRАМЕ> і їх атрибутами. Якщо ж ви хочете поекспериментувати, можна створити вкладені один в одного теги <FRAMESET> аналогічно тегам <ТАВLЕ>.

Атрибути ROWS і СОLS

Для кожного рядка і стовпця, згаданих у тезі <FRAMESET>, необхідний свій набір тегів <FRАМЕ>.

Атрибут ROWS

Атрибут ROWS тега <FRAMESET> задає число і розмір рядків на сторінці. Кількість тегів <FRАМЕ> повинно відповідати зазначеному числу рядків. Праворуч від знака "=" можна визначити розмір кожного рядка в пікселях, відсотках від висоти екрана або у відносних величинах (звичайно це вказівка ​​зайняти частину, що залишилася місця). Слід користуватися лапками і комами, а також залишати пробіли між значеннями атрибутів. Наприклад, наступна запис формує екран, що складається з трьох рядків: висота верхньої - 20 пікселів, середньої - 80 пікселів, нижній - 20 пікселів:

<FRAMESET ROWS="20, 80, 20">

Наступний тег - <FRAMESET> - створює екран, на якому верхній рядок займає 10% висоти екрана, середня - 60%, а нижня - що залишилися 30%:

<FRAMESET ROWS="10%, 60%, 30%">

Можна задати відносні значення в комбінації з фіксованими, вираженими у відсотках або пікселах. Наприклад, наступний тег створює екран, на якому верхній рядок має висоту 20 пікселів, середня - 80 пікселів, а нижня займає все місце, що залишилося:

<FRAMESET ROWS="20, 80, *">

Атрибут СOLS

Стовпці задаються так само, як рядки. Для них застосовні ті ж атрибути.

Завдання вмісту фрейма - елемент FRАМЕ

Тег <FRАМЕ> визначає зовнішній вигляд і поведінку фрейма. Цей тег не має закриваючого тега, оскільки в ньому нічого не міститься. Вся суть тега <FRАМЕ> в його атрибутах.Їх шість: NАМЕ, MARGINWIDTH, MARGINHEIGHT, SCROLLING, NORESIZE і SRC.

Атрибут NАМЕ

Якщо ви хочете, щоб при натисканні мишею на посиланні відповідна сторінка відображалася у визначеному фреймі, необхідно вказати цей фрейм, щоб сторінка "знала", що куди завантажувати. У попередніх прикладах ми назвали великий правий фрейм main, і саме в ньому з'являлися сторінки, обрані із змісту в лівому фреймі. Фрейм, в якому відображаються сторінки, називається цільовим (target). Фрейми, які не є цільовими, іменувати не обов'язково. Наприклад, можна записати такий рядок:

<FRАМЕ SRC="my.html" NАМЕ="main">

Імена цільових фреймів повинні починатися з букви або цифри. Одні й ті ж імена дозволяється використовувати в декількох фреймових структурах. По клацанню миші відповідні сторінки будуть відображатися в іменованому фреймі.

Атрибут МАRGINWIDTH

Атрибут МАRGINWIDTH діє аналогічно атрибуту таблиць CELLPADDING. Він задає горизонтальний відступ між умістом кадру і його границями. Найменше значення цього атрибута дорівнює 1. Не можна вказати 0. Можна не привласнювати нічого - за замовчуванням атрибут дорівнює 6.

Атрибут МАRGINHEIGHT

Атрибут МАRGINHEIGHT діє так само, як і МАRGINWIDTH. Він задає поля у верхній і нижній частинах фрейма.

Атрибут SCROLLING

Атрибут SCROLLING дає можливість користуватися прокруткою у фреймі. Можливі варіанти:

  • SCROLLING = yes,

  • SCROLLING = nо,

  • SCROLLING = аutо.

SCROLLING = yes означає, що у фреймі завжди будуть смуги прокрутки, навіть якщо це не потрібно. Якщо задати SCROLLING = no, смуг прокручування не буде, навіть коли це необхідно. Якщо документ занадто великий, а ви задали режим без прокручування, документ просто буде обрізаний. Атрибут SCROLLING = аutо надає браузеру самому вирішувати, потрібні смуги прокручування чи ні. Якщо атрибут SCROLLING відсутній, результат буде таким же, як при використанні SCROLLING = аutо.

Атрибут NORESIZE

Як правило, користувач може, переміщуючи межу фрейму мишкою, змінити його розмір. Це зручно, але не завжди. Іноді потрібно атрибут NORESIZE. Пам'ятайте: усі межіфрейму, для якого ви задали NORESIZE, стають нерухомими - відповідно, може виявитися так, що розміри сусідніх фреймів теж стануть фіксованими. Користуйтеся цим атрибутом з обережністю.

Атрибут SRС

Атрибут SRС застосовується в тезі FRАМЕ при розробці фреймової структури для того, щоб визначити, яка сторінка з'явиться в тому або іншому кадрі. Якщо ви задасте атрибут SRС не для всіх фреймів, то виникнуть проблеми. Навіть якщо сторінки, відображувані у  фреймі , вибираються в сусідньому фреймі, потрібно принаймні задати для кожного фрейму початкову сторінку. Якщо не вказати початкову сторінку і URL, фрейм виявиться порожнім, а результати можуть бути самими несподіваними.

Атрибут ТАRGЕТ

Щоб розібратися з атрибутом ТАRGЕТ, необхідно повернутися до простого прикладу з кадром змісту. Коли користувач клацає мишкою на одному з посилань у лівому фреймі, відповідна сторінка повинна з'явитися в правому фреймі, а зміст залишається незмінним. Щоб цього домогтися, потрібно визначити цільовий фрейм ТАRGЕТ, в якому буде відображатися сторінка для кожного пункту змісту. Цільові фрейми задаються в посиланнях лівого фрейму. Ось навіщо всім кадрам у фреймовій структурі були привласнені імена.  Правий фрейм називається main, так що потрібно в кожному посиланні додати атрибут ТАRGЕТ = "main", в результаті чого відповідна сторінка з'явиться у  фреймі  main. Зверніть увагу: кожне посилання містить атрибут ТАRGЕТ = "main", який по клацанню миші відображає сторінку у фреймі main.

Атрибут ТАRGЕТ можна задавати для декількох різних тегів. При використанні в тезі  <ВАSЕ>  він направляє всі посилання в певний цільовий фрейм, якщо надалі не передбачено інше. Можна задати атрибут ТАRGЕТ в тезі <АRЕА> в активному зображенні або в тезі <FОRМ>. Фрейми корисні для організації форм. Користувачі будуть бачити одночасно і форму, і результат свого вибору. Зазвичай при натисканні мишею кнопки Submit форма зникає, і з'являється сторінка з результатами вибору. Поєднання форм і фреймів може виявитися зручним способом навігації.

Приклад файла з меню.Тут при виборі посилання документи відкриваються в правому вікні:

<html>

<head>

<title> фрейми </title>

</head>

<body>

<a target="main" href="page1.htm">Клацніть показу page 1</a> <br>

<a target="main" href="page2.htm" >Клацніть показу page 2</a> <br>

<a target="main" href="page3.htm" >Клацніть показу page 3</a> <br>

<a target="main" href="page4.htm" >Клацніть показу page 4</a> <br>

<a target="main" href="page5.htm" >Клацніть показу page 5</a> <br>

</BODY>

</ HTML>

Рис. 3.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]