Наверняка Вы уже не один раз слышали о таком понятие, как фреймы. Прочитать о них можно в любом html-учебнике, а также на ресурсах о создании сайтов . Изучив множество примеров и описаний, я решил рассказать все о фреймах своими словами в очень простой форме. О плюсах, о минусах и о будущем фреймов будет сказано в самом низу этой страницы. Итак, что же такое фреймы в html?
Что такое Фреймы в html
Фрейм (англ. frame) - некоторая подключаемая независимая область на веб-странице.
Не пугайтесь, что это звучит немного непонятно. Давайте сразу приведем самый простой пример и тогда все станет ясно.
Отройте помощь (help) в любой программе (это может быть блокнот, какая-то программа, браузер и т.п.). Практически всегда Вы увидите хелп состоящий из двух частей (слева навигация, справа содержимое). Левая и правая части как раз и являются отдельными фреймами. Ниже представлен скриншот сделанный из хелпа самого обыкновенного блокнота Windows:
Рис 1. Использования фреймы на примере хелпа блокнота
То что Вы видите, является веб-страничкой состоящий из двух отдельных независимых фреймов. Приведем примерный html код такого фрейма из хелпа.
Пример с фреймами №1 (делаем помощь)
В каркасе выше рассмотренный хелп будет выглядеть следующим образом:
Рис 2. Каркас использования фреймов для примера №1
Разбиение страницы на области с помощью фреймов очень напоминает табличную верстку html (см. HTML тег table). Примерный код такой страницы может выглядеть следующим образом:
Пояснение к примеру №1Пример №1 html-страницы с фреймами
Как видно из кода выше, страница созданная из фреймов очень похожа на обыкновенную html-страницу: есть открывающий тег html, раздел
, заголовокПосле этого вставляем наш третий фрейм с контактной информацией и закрываем главный контейнер
Полный код данной страницы приведен ниже:
Конечно, адреса для фреймов я взял из предыдущих выпусков рассылки, и никакого меню, логотипа, навигации и так далее мы тут не увидели. Но структуру такую как нужно мы получили. Но если создать реальные нужные страницы, то можно получить красивую структуру.
Что мы получили в итоге. Чем это удобно или неудобно (решать вам), но при фреймовой структуре, всегда все наши фреймы остаются на странице. Независимо от величины содержимого у нас всегда будет виден логотип и меню сайта, нижняя часть сайта контактной информацией, блок навигации и баннеры. Вот, в общем-то, суть и смысл фреймов.
Существует возможность взаимодействия между фреймами. Можно сделать так, чтобы нажав на ссылку в одном фрейме, информация появилась в другом. Сейчас мы посмотрим, как это делается.
Создадим фрейм следующего вида:
В левом фрейме, будут располагаться наши ссылки. А в правом – страницы на которые ведут эти ссылки.
Создаем такой фрейм:
Здесь, надеюсь все понятно. Единственный момент – это у второго фрейма параметр name=”fram1″ . Именно значение параметра name мы и будем использовать в дальнейшем. Запомним его.
Теперь создаем документ ind2.html . в нем будет располагаться наш набор ссылок. В общем - это обычный html документ, только у ссылок, мы укажем параметр target и в качестве значение этому параметру укажем имя нашего фрейма - “fram1” . То есть:
on webformyself.com
on mail.ru
on google.ru
Создадим документ ind3.html. Можно его оставить пустым, а можно в нем расположить то, что вы хотите видеть на начальной странице.
Сейчас у нас создан фрейм из двух колонок. В левом располагается перечень ссылок, а в правом будет отображаться та страница, на которую ведет ссылка из левого фрейма.
Расскажу еще про один тег касающейся фреймов и буду заканчивать данный выпуск.
Тег … . В контейнер … обычно пишется информация о том, что браузер фреймы не поддерживает. Если браузер поддерживает фреймы, то данная информация игнорируется. Контейнер … ставится внутри html документа, в любое место, куда захочется или это требуется. В параметре src указывается адрес страницы, которая будет загружаться во фрейм. Например, поставим во второй выпуск рассылки сайт webformyself.com . Для этого в любом месте html документа второго выпуска напишем:
У тега есть ряд параметров. Некоторые из них вы видите в данном коде. Почти все они такие же, как и у тега .
Итак параметры тега :
align - определяет, как фрейм будет выравниваться по краю, а также способ обтекания его текстом. Значения те же, что и для тега img.
frameborder - устанавливает, отображать границу вокруг фрейма или нет.
height - высота фрейма.
hspace - горизонтальный отступ от фрейма до окружающего контента.
name - имя фрейма.
scrolling - способ отображения полосы прокрутки во фрейме.
src - путь к файлу, содержимое которого будет загружаться во фрейм.
vspace - вертикальный отступ от фрейма до окружающего контента.
width - ширина фрейма.
На этом я завершаю данный выпуск. До скорых встреч. Пока – пока!
Всем доброго времени суток. На связи Алексей Гулынин. В прошлой статье мы разобрали, как установить favicon на сайт . В данной статье я бы хотел рассказать, что такое фреймы в html
. В переводе с англ. фрейм означает "рамка". С точки зрения html, фрейм
— это некая выделенная область на странице, которая ссылается на другую страницу и выводит её содержимое (той самой другой страницы или сайта). Стоит сразу отметить, что фреймы не получили большого развития и сейчас почти не используются, разве что в каких-то специализированных проектах.Всё то же самое можно сделать с помощью CSS и Javascript.
С помощью фрейма страницу можно разбить на несколько блоков, каждый из которых будет независим от других. Давайте создадим основной документ index.html
и два вспомогательных (внутренних), содержимое которых как раз и будет отображаться на основной странице: menu.html
(будет содержать разметку навигации по сайту) и content.html
(контент сайта). Разметка index.html
будет иметь следующий вид:
Обращаю ваше внимание, что здесь отсутствует тег
, вместо него появился тег- cols — данный атрибут указывает, что фреймы будут помещены в столбцы. В значении данного атрибута через запятую указываются размеры фреймов. В нашем случае у нас будет 2 фрейма. Ширина первого будет 40% от ширины страницы, * означает всё остальное пространство страницы (в данном случае можно было написать и 60%). Также размер можно задавать и в пикселях.
- rows — данный атрибут указывает, что фреймы будут помещены в строки.
Содержимое файла menu.html имеет вид:
- 1 пункт меню
- 2 пункт меню
- 3 пункт меню
Содержимое файла content.html имеет вид:
Тестируем фреймы
Абзац текста
Чтобы вывести содержимое другого документа нужно использовать тег с атрибутом src , в значении которого указывается путь до файла. Также можно указывать url сайта, который мы хотим вывести в этом блоке. Для начала давайте выведем наши страницы menu.html и content.html :
Обязательно наберите данный код, чтобы посмотреть как это всё работает.
У тега frame существуют следующие атрибуты:
- src — путь до страницы или же url-адрес сайта (страницы сайта). Стоит отметить, что у некоторых сайтов существует защита от встраивания,
- name — присваивает фрейму имя, с помощью которого данным фреймом можно управлять,
- noresize — запрещает изменять размер фрейма,
- scrolling — возможность прокручивать содержимое.
В качестве домашнего задания создайте 2 фрейма и разместите их в строку. В качестве значения атрибута src укажите путь до сайтов.
07.12.2015
Пока нет
Всем привет!
Продолжаем усердное изучение основ HTML. Я рад, что вы не бросаете уроки .
В этом уроке мы разберем, что такое фреймы
и как они создаются в HTML.
Итак, давайте определимся, что такое фреймы в HTML.
Фреймы
– это разделение окна браузера на отдельные области, в которых могут загружаться отдельные HTML документы.
Я думаю, вы поняли, что благодаря фреймам, вы можете просмотреть сразу несколько веб страниц в одном окне браузера.
Для примера, чтобы понять, как работает фрейм на практике, предлагаю посмотреть пример. Сделайте там пару переходов:
Ну, как вам? Хотите научиться такое создавать? Сейчас мы научимся вставлять фреймы в html-документ .
Создание фрейма на веб странице осуществляется по такому макету:
Внимание: макет фрейм-кода вставляется в html-документ вместо тега
:
○ тег frameset
Это главный контейнер для создания фрейма, внутри которого содержатся другие элементы.
Закрывающий тег обязательный.
*Атрибуты тега frameset:
- Cols - вертикальные
- Rows - горизонтальные
rows - горизонтально
cols - вертикально
В атрибутах cols и rows указывается, на сколько частей делить окно браузера. Вот, например, чтобы разделить окно браузера на две вертикальные части, нужно прописать вот так:
Левая часть экрана будет размером 30%, а правая – 70%.
Если хотите разделить браузер еще на несколько частей, допишите через запятую дополнительные размеры, вот, например, так:
В итоге первая вертикальная колонка будет шириной 30%, вторая - 20%, третья - 10%, четвертая - 40%.
Разобрались?
Так же и с горизонтальной разбивкой:
Первая горизонтальная колонка будет шириной 30%, вторая - 20%, третья - 10%, четвертая - 40%.
○ тег frame
Тег frame указывает, какой html-документ должен быть загружен в окно браузера.
Вот, например, нам нужно загрузить в одном окне браузера три разных страницы «1.html
», «2.html
», «3.html
». Тег frame будет выглядеть вот так:
Подытожим знания по фреймам. Итак, задача: нужно разделить окно браузера на две части и загрузить в эти части две веб страницы – «1.html
» на 30%
, «2.html
» на 70%
.
Вот готовый код:
Результат будет таким:
* Атрибуты тега frame
- src – адрес веб страницы. src="1.html" ;
- marginwidth – отступ внутри фрейма по ширине. Пример: marginwidth="10" ;
- marginhight – отступ внутри фрейма по высоте. Пример: marginhight ="10" ;
- scrolling
– прокрутка фрейма через скролл.
- yes – скролл будет присутствовать во фрейме. Пример: scrolling ="yes" ;
- no – скролл не будет присутствовать во фрейме. Пример: scrolling ="no" ;
- auto – скролл будет присутствовать во фрейме при необходимости. Пример: scrolling ="auto" ; - noresize – запрещает двигать границы фрейма.
- name – имя фрейма. Указывает, в каком окне нужно открывать другие фреймы. Пример: name ="сайт" ;
Если фрейму не прописать имя в атрибуте «name», то при нажатии по ссылке откроется новый фрейм в том окне, где была ссылка:
А вот пример, если прописать атрибут «name»:
Правда, так лучше?
Для любого фрейма пропишите атрибут «name»
там, где вы хотите, чтобы открывались в нем другие html-документы
Имя в атрибуте «name» может быть любое. Но в дальнейшем, если вы будете давать имена и остальным тегам «frame» , то помните, что каждое должно быть уникальным:
страница 2 страница 3
«Страница 1 », «Страница 2 » будут открываться в одном окне там, где вы указали имя фрейму «name ="сайт " » и «Страница 3 » откроется в другом фрейме, где было название «name ="bloggood-ru " »
ПРАКТИКА
Задание: Нужно создать фреймы вот по такому макету:
Вначале создадим три горизонтальных фрейма:
Теперь добавим «top.html» и «footer.html»
Результат пока что будет вот таким:
Теперь между «top.html» и «footer.html» добавим «menu.html» и «content.html» :
Готовый код:
Сохраните файл, как «index.html»
Создайте странички «top.html » , «footer.html» , «menu.html» и «content.html» :
Код файла «top.html»
сайт
Код файла «footer.html»
Код файла «menu.html»
- Главная страница
- Об авторе
Код файла «content.html» :
Главная страница
Содержимое сайта - "Главная страница (content.html)"Код файла «autor.html» :
Вот такой результат у меня вышел:
Воспользуемся атрибутами «frame» и запретим вручную растягивание фреймов и уберем скролл в файле «index.html» .
○ что делать если фреймы не поддерживаются браузером?
Можно вывести сообщение пользователю, что его браузер не поддерживает фреймы. Для этого вставьте тег
○ Плавающий фрейм
Если вам нужно вставить фреймовое окно прямо в страницу, в которой нет фреймовой структуры, для этого существует тег «iframe»
* атрибуты тега «iframe»
- src - путь к открываемой странице
- width - ширина плавающего фрейма
- height - высота плавающего фрейма
- scrolling
- полоса прокрутки
- no - никогда не показывать полосу прокрутки
- yes - всегда показывать
- auto - показывать при необходимости - align
- выравнивание плавающего фрейма
- left – слева
- right – справа
- top – выше
- bottom – ниже - frameborder
- рамка вокруг плавающего фрейма
- 1 - включить рамку
- 0 - выключить рамку
Вот так будет выглядеть тег «iframe» с атрибутами:
Если браузер не поддерживает фреймы, можно вставить текст «УПС! Ваш браузер не поддерживает фреймы.
» между тегами
.
Это будет выглядеть вот так:
Для примера давайте добавим к файлу «content.html» плавающий фрейм:
Главная страница
Содержимое сайта - "Главная страница (content.! Ваш браузер не поддерживает фреймы.Предыдущая запись
Следующая запись