Размеры фрейма


Содержание

Размеры фрейма

Фреймы — это средство форматирования страницы. Они позволяют разделить окно просмотра браузера на несколько прямоугольных областей. В этом они очень похожи на таблицы. Однако при помощи фреймов можно не только разделить страницу на несколько частей, но и решить задачу взаимодействия между этими частями, т. к. в каждый фрейм можно загрузить отдельный HTML- документ. Т. е. каждый фрейм является как бы самостоятельной WEB-страницей. Следуетт помнить, что взаимодействие между окнами получается довольно сложное. Надо использовать правильные имена фреймов (соблюдая регистр букв) чтобы страница грузилась в нужное окно страницы с фреймами.

При использовании фреймов, файл, описывающий структуру фреймов (обычно это — файл index.html или index.htm) не может содержать в себе никакой другой информации, кроме этого описания. Вместо раздела BODY такой файл содержит раздел FRAMESET. Внутри тега-контейнера . могут содержаться только вложенные теги FRAMESET и теги FRAME. Ниже дан HTML код простейшего документа, содержащего два вертикальных фрейма, один из которых занимает 130 пикселей, а второй — оставшуюся часть окна:

Пример1
теги META

При открытии данной страницы со фреймами страница f1.html загружается в левый фрейм, а страница f1.html — в правый.

Тег FRAMESET имеет следующие параметры:

ROWS=»список значений» — задает высоту горизонтальных фреймов.

COLS=»список значений» — задает ширину вертикальных фреймов.

Список значений для этих параметров представляет собой разделенный запятыми список значений, которые могут выражаться в пикселях или процентах. Число строк или столбцов определяется числом значений в соответствующем списке. Необходимо определить, по меньшей мере, два значения хотя бы одного из этих параметров. То есть, если заданы значения
, то окно браузера будет разбито на 4 части.

Два верхних фрейма будут занимать 20% от высоты окна и по половине его ширины, а два нижних — остальное пространство по высоте и по половине — по ширине. Чтобы разделить окно на три фрейма, необходимо использовать теги FRAMESET, вложенные друг в друга. Т. е. сначала делим окно на две части, а потом одно из окон (или оба, если нам нужно много неодинаковых фреймов) делим еще на две (или несколько) частей.

Внутри тега FRAMESET должно находиться столько тегов FRAME, сколько фреймов было определено структурой FRAMESET. В вышеприведенном примере 1 описано два фрейма, соответственно, поставлено два тега FRAME.

Тег FRAME не является контейнером и не имеет закрывающей части. Единственным обязательным параметром тега FRAME является параметр SRC, в качестве значения которого выступает URL-адрес документа, который мы хотим загрузить в этот фрейм. Где лежит этот файл, как и в других случаях использования параметра SRC (рисунки, звук), не имеет особого значения.

Не обязателен, но очень желателен параметр
NAME=». «.
Этот параметр задает имя фрейму, которое помогает организовать взаимодействие между фреймами. Если фрейм имеет имя, в него можно загружать документы, используя ссылки в других фреймах.

Именем фрейма может служить любое допустимое в документах HTML сочетание букв, цифр и всяких прочих знаков, какие есть на клавиатуре. Единственное условие — они должны начинаться с латинской буквы или цифры.

Исключением являются имена, зарезервированные для навигации между фреймами: _blank, _top и др. При организации ссылок необходимо использовать параметр
TARGET=имя_фрейма
Например, для того чтобы файл Name.html загружался во фрейм с именем Name, ссылка должна выглядеть следующим образом:
.

Некоторые другие параметры тега FRAME:

MARGINHEIGHT=»NN» — задает ширину поля (отступа от края, не рамки!) сверху и снизу фрейма в пикселях ( NN -пикселей).

MARGINW >NN -пикселей.

SCROLLING=». « — Разрешает или запрещает браузеру создавать во фрейме полосы прокрутки. Можетпринимать значения:

YES — вызывает появление полос прокрутки независимо от ширины (высоты) содержания фрейма.

NO — запрещает создание полос прокрутки.

AUTO — значение по умолчанию. Полос прокрутки появляются только если содержимое окна не помещается во фрейм. Браузер в этом случае отображает содержимое фрейма так же, как и при отсутствии параметра SCROLLING.


NORESIZE — предотвращает возможность изменения пользователем размера фреймов. Не требует никаких значений. При употреблении этого параметра в одном из фреймов, размеры смежных фреймов изменить будет также невозможно.

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

Например, можно вставить следующий текст:
Для просмотра данного сайта требуется браузер, поддерживающий фреймы.

Можно добавить ссылку, например, на главную или какую-нибудь другую страницу сайта, не использующую фреймы.

Создание гиперссылок с учетом фреймов

ФРЕЙМЫ

Создание фреймов

Фреймы (Frame – кадр или рамка) – мощный механизм представле­ния информации на веб-страницах. С помощью фреймов экран раз­деляется на несколько областей, в каждой из которых отображается содержимое отдельной страницы.

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

Так как документ с фреймами состоит из нескольких документов, для создания фреймовой структуры тег не используют. Вместо него необходим тег и парный ему тег .

Этот тег имеет следующие атрибуты.

cols – количество фреймов-столбцов. Значением этого атрибута является список размеров каждого из фреймов.

Например, тег задает три вер­тикальных фрейма соответствующих размеров. Размер последнего фрейма можно задавать с помощью символа *, означающего оставшую­ся часть экрана. Размеры фреймов можно задавать не только в процен­тах, но и в пикселях.

rows – количество фреймов-строк.

Например, тег задает два горизонталь­ных фрейма, причем первый занимает 10 % экрана, второй – всю остав­шуюся часть.

Если указать эти два атрибута одновременно, каждый горизонталь­ный фрейм будет разбит на указанное число вертикальных фреймов.

border – ширина рамки между фреймами. При border=» 0″ грани­цы будут отсутствовать.

bordercolor – цвет рамки.

Для описания каждого из фреймов используется тег с ат­рибутом src=»https://poisk-ru.ru/%D0%B8%D0%BC%D1%8F%20%D1%84%D0%B0%D0%B9%D0%BB%D0%B0″.

• Атрибут scrolling определяет наличие линеек прокрутки содер­жимого фрейма. Возможные значения: yes – линейки прокрутки ото­бражаются всегда, – не отображаются, auto – появляются в случае необходимости.

HTML фреймы

Обратите внимание: фреймы на данный момент считаются устаревшей технологией и не будут поддерживаться в HTML5 (это относится только к обычным фреймам, строковые фреймы рассмотренные далее в данной главе не считаются устаревшими). Не используйте обычные фреймы в своих проектах!

В одном окне браузера может быть отображено несколько веб-страниц, которые в данном случае будут называться фреймами.

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


Тэг описывает один отдельный фрейм. В его атрибуте src должен указываться адрес документа, который будет отображен в данном фрейме.

Размер фреймов

Размеры фреймов устанавливаются с помощью атрибутов тэга . Размеры могут задаваться в пикселях (px) и процентах (%).

С помощью атрибута rows Вы можете установить высоту фрейма. Размеры для отдельных фреймов должны отделяться запятой.

С помощью атрибута cols Вы можете задать ширину отдельного фрейма.

Обратите внимание: фрейм по умолчанию имеет видимую границу это значит, что пользователь может изменять его размер перетаскивая границу. Чтобы запретить перетаскивание границ Вы можете добавить атрибут noresize со значением «noresize» к тэгу .

Что делать, если браузер пользователя не поддерживает фреймы?

Если браузер пользователя не поддерживает фреймы Вы должны использовать тэг . Значение этого тэга будет отображено только тем пользователям браузер которых не может отобразить фреймы.

Обратите внимание: При использовании тэга noframe Вы должны указывать тэг body как показано в примере выше.

Строковые фреймы

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

Данный тэг часто используют для отображения рекламы на сайтах.

Ширина строкового фрейма задается с помощью атрибута width, а высоту с помощью атрибута height.

Обратите внимание: если браузер пользователя не сможет отобразить строковый фрейм он просто его пропустит.

HTML фреймы

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

Не так давно фреймы использовались в качестве навигации по сайту, когда навигационная страница располагалась в одном окне, а страницы с контентом, располагались в других документах. В настоящее время использование фреймов на страницах сайтов можно встретить все реже, это как правило, какие-то примеры кода с «песочниц» (выделенная среда для исполнения компьютерного кода), участки Google Maps (необходимо задавать адрес в такой форме: https://maps.google.com?output=embed ), либо видео, размещенное с видео хостинга YouTube.

Тег (HTML Inline Frame Element) определяет встроенную в веб-страницу область, которая может отображать содержимое отдельно взятого документа (например, *.pdf), медиа-контента или другого веб-сайта в заданном пространстве. Содержимое внутри области существует независимо от окружающей страницы.

Илон Маск рекомендует:  Что такое код ocistatementtype

Синтаксис для добавления фрейма:

Обращаю Ваше внимание, на то что некоторые сайты, например такие как поисковые системы, блокируют возможность размещения страницы сайта во фреймах, либо осуществляют переход по таймеру на свою «реальную» страницу.

В следующем примере мы возьмем в качестве загрузки во фрейм отличный сайт — TinyPng.com, который предоставляет возможность сжимать изображения, предназначенные к загрузке на Ваш сайт. Как правило, удаётся уменьшить размер изображений на 50%, а то и больше, что значительно уменьшает их объем, экономит дисковое пространство и увеличивает скорость загрузки страниц.

В этом примере мы:

  • Элементом создали фрейм, которому атрибутом name задали имя — «myframe» , атрибутом width установили ширину фрейма «665px» , а атрибутом height высоту фрейма «265px» . В обязательном атрибуте src указали абсолютный адрес сайта, который хотим открыть во фрейме «https://tinypng.com» .
  • Разместили четыре ссылки, при клике на которые ссылка открывается непосредственно во фрейме (в значении атрибута target указано имя нашего фрейма — «myframe» ). Первая ссылка открывает сайт, загруженный изначально, а остальные три загружают различные изображения, находящиеся в той же папке, что и файл с примером.

Результат нашего примера:


Рис. 27 Пример использования фреймов в HTML.

HTML аббревиатура и контактная информация

Как правило, тег применяется совместно с глобальным атрибутом title, для отображения полного описания аббревиатуры пользователю при наведении.

В данном примере мы:

  • Поместили аббревиатуру института в тег и применили глобальный атрибут title, для того, чтобы при наведении на нее мышкой было понятно, что это высшее учебное заведение, а не то, что вы подумали.
  • Кроме того загрузили во фрейм сайт данного учебного заведения (в обязательном атрибуте src указали абсолютный адрес сайта).
  • Внизу страницы (внутри тега ) добавили адрес и контактные данные института, указанные на официальном сайте. Текст, помещенный внутрь этого тега, по умолчанию отображается курсивом. Кроме того для элемента добавили глобальный атрибут style, которым задали встроенный CSS стиль (цвет заднего фона).

Рис 28 Аббревиатура и контактная информация в HTML.

Вопросы и задачи по теме

Перед тем как перейти к изучению следующей темы пройдите практическое задание:

  • Для выполнения задания вам понадобится скачать архив и скопировать содержимое архива в любую папку на вашем жестком диске:
  • Используя полученные знания составьте HTML страницу (practice_19.html в архиве), которая содержит фрейм и четыре ссылки:
  1. Первая ссылка загружает сайт «Википедии», или любой другой.
  2. Вторая ссылка загружает во фрейм изображение из папки (practice_19_1.jpg).
  3. Третяя ссылка загружает во фрейм изображение из папки (practice_19_2.jpg).
  4. Четвертая ссылка загружает во фрейм изображение из папки (practice_19_3.jpg).

Для фрейма задайте размер таким образом, чтобы он был по ширине и высоте изображений. В качестве адреса, который будет загружаться во фрейм можете выбрать сайт «Википедии», или любой другой.

  • Результат примера вы можете скачать после выполнения задачи для самопроверки:

5.5. Изменение размеров фреймов

5.5. Изменение размеров фреймов

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

Рис. 5.7. Изменение размеров фрейма указателем мыши

Для того чтобы заблокировать возможность изменения пользователем размеров фреймов, следует воспользоваться атрибутом noresize элемента FRAME.

Атрибут noresize не требует никаких значений. Для страницы с двумя фреймами этот параметр можно указать лишь в одном месте. Естественно, если у одного фрейма нельзя изменять размеры, то у близлежащего к нему размеры также не будут меняться.

Похожие главы из других книг


Изменение размеров и перемещение окон

Изменение размеров и перемещение окон Обычно размеры окон можно изменять. Те, для которых разрешена эта операция, имеют специально обозначенный уголок в нижнем правом углу (рис. 8.8). Рис. 8.8. Угол «перемещения»После наведения на этот элемент указатель мыши примет форму

Изменение размеров и обрезка рисунков

Изменение размеров и обрезка рисунков Вне зависимости от того, добавили ли вы рисунок из коллекции клипов Office или из другого места, к изображениям на листе книги Excel применяются одинаковые методы изменения размеров и обрезки. Далее при описании этих методов, а также при

Настройки фреймов

Настройки фреймов После помещения изображения во фрейм мы можем работать отдельно с фреймом и отдельно с его содержимым – картинкой. Инструмент Direct Selection (Выделение напрямую), которым мы пользовались для того, чтобы «достать» до отдельных объектов группы, и здесь придет

Настройки текстовых фреймов

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

Изменение размеров элементов таблицы

Изменение размеров элементов таблицы Ширину столбцов и высоту строк можно изменять несколькими способами. Самый простой способ– при помощи мыши. Для этого подведите указатель к правой границе столбца или к нижней границе строки. Когда указатель примет форму двойной

1.10. Образы и системы фреймов

1.10. Образы и системы фреймов «Каждый человек охотно согласится с тем, что между двумя видами ощущений — непосредственными, когда человек, например, страдает от сильной жары или ему приятно разливающееся по всему телу тепло, и ощущениями, воскрешаемыми в памяти или

3.7. Резюме. Использование фреймов в эвристическом поиске

3.7. Резюме. Использование фреймов в эвристическом поиске За последние десять лет широкое распространение получила идея о том, что важны все аспекты представления информации с помощью «пространства задачи»; однако мысль о том, что описания могут быть полезны и для самих

5.2. Глобальная система пространственных фреймов

5.2. Глобальная система пространственных фреймов Мне не очень нравится предлагаемая ниже модель, но для систем ИИ раньше или позже нечто подобное непременно потребуется разработать. Глобальный пространственный фрейм (GSF) представляет собой постоянный набор «типичных

Глава 3 Способ формализации фреймов

Глава 3 Способ формализации фреймов Одни из множества возможных способов формализации фрейма-сценария предполагает представление его в виде сети следующей иерархической структуры (рис.П2). Узел самого верхнего уровня сети (на рисунке ему соответствует кружок,

3.1. Примеры формализованного представления фреймов-сценариев

3.1. Примеры формализованного представления фреймов-сценариев Приведенный выше фрейм-сценарий ресторана легко можно изобразить в виде такой графовой структуры И/ИЛИ (рис.П4). Номера сцен и действий сценария присвоены вершинам графа, представляющим соответствующие

Создание фреймов

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

23.3.3. Изменение размеров окна

23.3.3. Изменение размеров окна Вам кажется, что окно слишком маленькое и не подходит для нашей программы? Для изменения размеров окна лучше всего использовать функциюvoid gtk_window_set_default_size(GtkWindow *window, gint width, gint height);Эта функция устанавливает ширину окна window равной width, а высоту —

Использование фреймов

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


5.1. Создание фреймов

5.1. Создание фреймов Чтобы HTML-страница содержала фреймы, а экран был разделен на области, необходимо заменить пару тегов .. в коде HTML-страницы парой тегов … . Необходимо также указать хотя бы один из атрибутов cols или rows. С помощью этих

5.4. Ссылки внутри фреймов

5.4. Ссылки внутри фреймов В большинстве случаев при переходе по ссылке в окне браузера текущий документ заменяется новым. При использовании фреймов схема загрузки документов отличается от стандартной. Главное отличие – возможность загружать документ в выбранный фрейм

5.8. Достоинства и недостатки фреймов

5.8. Достоинства и недостатки фреймов Поскольку вокруг фреймов существует много разговоров об их необходимости, рассмотрим их достоинства и недостатки, чтобы можно было самостоятельно решить, стоит ли использовать их на своем сайте.Достоинства фреймов следующие.•

Выпуск №14. Фреймы в HTML

Дата публикации: 2009-07-30

Всем доброго времени суток! С Вами Бернацкий Андрей.

Прежде, чем перейти непосредственно к статье, я Вам хочу дать ссылку на видео-версию данной темы:

В этом выпуске мы поговорим о фреймах в HTML. Фреймы по своей сути очень похожи на таблицы, но в отличие от таблиц, каждый фрейм независим и в каждом из них может быть отдельная web страница со своим адресом.

Как создать сайт самому?

Какие технологии и знания необходимы сегодня, чтобы создавать сайты самостоятельно? Узнайте на интенсиве!

На рисунке видим достаточно распространенную структуру сайта. Ее можно представить в виде таблицы, а можно все это сделать при помощи фреймов. В верхний фрейм можно загрузить страницу с логотипом и меню, в левый – страницу с навигацией по сайту, в центральном фрейме будет страница с основным содержимым сайта, в правый фрейм загрузим страницу с рекламными баннерами, а в нижний – страницу с контактной информацией. Вот вкратце что такое фреймы.

Теперь рассмотрим, как это все можно осуществить.

Особенностью документа, содержащего фреймы, является то, что он не содержит контейнера BODY. Вместо него используется контейнер FRAMESET. Общий синтаксис фреймов выглядит следующим образом:

В контейнере …. располагаются теги , которые определяют содержимое фреймов.

У тега есть два параметра:

rows = число – количество строк (горизонтальных подокон).

cols = число – количество столбцов (вертикальных подокон).

Вообще говоря, значение параметров rows и cols задаются не совсем числами, а перечислением чисел через запятую. Сколько будет идти чисел, столько строк или столбцов и будет, а числа определяют размер фрейма. Главное, чтоб сумма этих чисел составляла всю ширину экрана.

Давайте, разберем это на примере, и все будет понятно. Сейчас создадим фреймовый документ следующего вида:

Код, который определит нам такую структуру фрейма, будет выглядеть так:

В первой строке приведенного кода открывается контейнер frameset, в параметре cols указано, что будет три вложенных фрейма. У первого ширина будет 30% от всей ширины экрана. У третьего ширина будет тоже 30% от всей ширины экрана. А второй фрейм займет все оставшееся место. Да символ «*»(звездочка) означает занять все оставшееся место на экране.

Илон Маск рекомендует:  Что такое код hw_connect

Кстати, рассмотрим, каким образом фреймам можно задавать размеры в параметрах cols и rows:


Можно задать размер, поставив просто число. Это число, будет определять размер фрейма в пикселях.

Можно задать значение ширины в процентах. Причем, если сумма процентов всех колонок будет превышать 100%, то все фреймы пропорционально уменьшаться, что бы общая сумма было равна 100%. Аналогично ситуация будет, если сумма процентов всех колонок будет менее 100%, то все фреймы пропорционально увеличатся, что бы общая сумма было равна 100%.

Можно задавать размер фрейма символом “*” (звездочка). Это означает, что фрейм должен занять все оставшееся место. Если будет указано, например , то есть две звездочки, то все оставшееся место будет поровну разделено между этими двумя фреймами (в данном случае по 40%).

Можно комбинировать варианты задания размеров фреймов в HTML. Например:

Этот код означает, что у первого фрейма размер будет 70 пикселей, у третьего 40% ширины экрана, а второй займет все оставшееся место.

С первой строкой кода разобрались полностью. Идем дальше.

Далее следуют теги . Поскольку через запятую в параметре cols тега frameset задано три числа (то есть будет три фрейма), то и тегов должно быть тоже три. Значением параметра src является адрес web страницы, которая будет загружаться в данный фрейм. Адрес, как видно из примера, может быть абсолютным и относительным.

И в последней строке закрывается контейнер .

Если заменить в первой строке кода параметр cols на rows, то мы получим такой же фреймовый документ, состоящий из трех фреймов. Только разбиение на фреймы будет идти по вертикали.

Параметры rows и cols одновременно использовать нельзя. Это приводит к ошибкам, и неверному отображению содержимого.

У всех сейчас возник вопрос о том, как создать такую структуру, о которой я говорил в самом начале статьи. К этому вернемся чуть позже, а пока обратимся к тому, что у нас сейчас происходит в браузере.

В браузере мы видим три страницы, каждая из которых находится в своем фрейме.

При этом мы, наведя курсор мыши к границам фреймов, можем изменять размеры фреймов, так же видны полосы прокрутки и границы между фреймами. Это не всегда нужно, даже скорее совсем не нужно. А всем этим можно управлять благодаря параметрам тегов frame и frameset.

Параметры тегов frame и frameset:

src =»url» – обязательный параметр. Указывает адрес страницы, которая будет отображена внутри фрейма. Используется только для frame.

noresize – отменяет возможность изменения размеров. Используется только для frame.

scrolling=»yes/no/auto» – определяет наличие полос прокрутки. Значение yes – указывает на присутствие полос прокрутки. Значение no – указывает, что полос прокрутки не будет. При значение auto – браузер сам определяет, будут ли полоски прокрутки. Используется только для frame.

name=»frame-name» – имя фрейма. Данный параметр используется для взаимодействия между фреймами. Подробнее о нем поговорим чуть позже. Используется только для frame.

border=число – толщина границ между фреймами. Если принимает значение 0, то границы между фреймами не отображаются. Используется только для frameset.

framespacing=»число» – расстояние между фреймами. Используется только для frameset.

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

Понятие фрейма в HTML

Окно браузера может быть разделено на части, которые называются фреймами, иногда кадрами; можно их назвать и подокнами. В каждую такую часть окна браузера, т.е. фрейм, может быть загружен отдельный HTML документ. Рассмотрим пример окна браузера с тремя фреймами.

В каждый фрейм в этом случае для наглядности загружен простой HTML документ, сообщающий номер фрейма и название файла, хранящего его содержимое. Если в фрейм будет загружен реальный документ, который не помещается полностью в нем, то у фрейма (внимание, не у всего окна!) появятся вертикальная и/или горизонтальная полосы прокрутки в зависимости от того, по горизонтали и/или по вертикали не помещается содержимое документа.
Например, дизайн и структура вашего сайта таковы, что есть одинаковые элементы, повторяющиеся на каждой странице сайта: название, навигационное меню, адрес в конце страницы или какие-то иные подобные элементы. Изменяется только содержание разделов. Тогда страницы можно разбить на части таким образом, чтобы неизменяемые части были помещены в отдельные фреймы, а еще один фрейм выделить для того, чтобы в него загружалось содержимое нужного раздела после щелчка на соответствующей ссылке, например, из меню.
Это дает экономию в скорости загрузки, так как одинаковые части страниц сайта повторно не загружаются, а просто все время отображаются в отведенных им фреймах.

Создание структуры фреймов элемент FRAMESET

Структура разбивки окна хранится в отдельном HTML документе, он и называется документом с фреймами. Структура фреймов формируется при помощи специального элемента FRAMESET. Обычный документ имеет один раздел HEAD и один раздел BODY, тогда как в документе с фреймами раздел BODY заменяется описанием структуры фреймов, Т.е. разделом FRAMESET.
В раздел FRAMESET может быть добавлен элемент NOFRAME с альтернативным содержанием для отображения в браузерах, не поддерживающих фреймы, или в браузерах с отключенной поддержкой фреймов. Такие браузеры просто не поймут структуры FRAMESET и NOFRAME, а отобразят помещенный внутри них текст.


Обратите внимание, что раздел BODY в документе отсутствует полностью, а элемент NOFRAMES содержится внутри раздела FRAMESET.
Сама структура фреймов формируется делением окна браузера на части — строки и колонки; В какой-то степени это похоже не создание таблиц. Для этого у элемента FRAMESET существуют атрибуты cols и rows, задающие деление на колонки и строки соответственно.
Единицы измерения, в которых можно задавать размеры фреймов, это, как обычно, пиксели и проценты. Есть еще возможность задавать размер в новой пока для нас единице измерения, которую условно можно назвать «часть» окна. Значения атрибутов cols и rows задаются перечислением размеров соответствующих областей через запятую. Можно комбинировать разные способы задания. Рассмотрим несколько примеров, исходя из предположения, что размер окна браузера 800х600 пикселей.

Такой код поделит окно по горизонтали на два одинаковых по высоте фрейма (строки). Если задать атрибут cols=» 50%, 50%», то получим две одинаковые по ширине колонки.

При таком коде получим три колонки фреймов: левая шириной 120 пикселей, средняя шириной 400 пикселей, а на третью колонку отводится все, что останется от первых двух колонок, в атрибуте это значение обозначается символом звездочки «*».

Такой код создаст две колонки фреймов. Ширина первой принимается за единицу (это обозначается как 1 * или просто *), ширина второй в четыре раза больше. Таким образом, ширина первой будет 20%, а ширина второй 80% от общей ширины окна браузера.

В приведенном мере комбинируются все три способа задания размеров. Ширина первой колонки будет равна 100 пикселей, для второй отводится 40% оставшейся ширины (800 — 100 = 700), и на третью остается все, что не занято первой и второй колонками.
Раздел FRAMESET может содержать вложенные разделы FRAMESET, что позволяет создать довольно сложную структуру фреймов. Допустим, нам надо разделить окно на 4 фрейма следующим образом:

Сначала необходимо организовать 2 колонки таким образом:

Затем вторую колонку поделить на три строки таким образом:

Отдельный фрейм, точнее его описание, задается элементом FRAME и его атрибутами: подробнее о нем чуть позже. Вернемся к вложенным элементам FRAMESET. Рассмотрим пример кода, создающего такую структуру фреймов:

Каким образом разбивается окно на фреймы, вроде бы разобрались. При создании фреймов можно сделать так, чтобы границы между фреймами видно не было. Как вы, наверное, уже догадались, делается это при помощи атрибута border его значение должно равняться нулю. Но дело в том, что для фреймов этот атрибут не воспринимается браузером Internet Explorer, зато поддерживается браузером Netscape Navigator. Для Internet Explorer граница между фреймами задается атрибутом frameborder, который не поддерживается браузером Netscape Navigator. Получается, что необходимо задавать одинаковые значения для обоих атрибутов, чтобы оба браузера восприняли HTML код одинаково и толщина границ между фреймами была одинаковой.
Толщину границ или, по-другому, расстояние между фреймами также можно регулировать атрибутом framespacing, значение которого задается в пикселях. Все атрибуты элемента FRAMESET приведены в таблице.

Атрибуты элемента

Атрибут

Описание

Пример

rows Определяет количество и размеры горизонтальных фреймов (фреймов строк) в окне браузера. В качестве значения задается список размеров фреймов через запятую. Способы задания размеров:

а) в процентах от высоты рабочей области окна браузера например: «30%, 30%, 40%» ;

б) в виде знака «*» (звездочка), говорящего о том, что фрейм занимает все свободное пространство окна браузера, незанятое другими фреймами с явно указанными размерами например, звездочка в записи «25%, 25%, *» равносильна 50%;

в) в пикселях например: «75, *» .

Все три способа можно совмещать. rows= «25%, 25%, *» cols Определяет количество и размеры вертикальных фреймов (фреймов столбцов) в окне браузера. В качестве значения
задается список размеров фреймов через запятую. Размеры задаются так же, как и в предыдущем параметре ROWS. cols= «265, *» border Определяет ширину рамок фреймов в пикселях. Данный параметр действует только в браузерах Netscape. Border= «0» frameborder Данный параметр действует только в браузерах lnternet Explorer и определяет наличие рамок у содержащихся внутри элемента FRAMESET фреймов. Возможные значения: Yes отображать рамки; No или 0 не отображать рамки. Frameborder= «0» framespacing Определяет расстояние (так называемую «серую область») между фреймами в пикселях. Данный параметр также необходим для создания фреймов без рамок. framespacing= «0»

Теперь вернемся к элементу FRAME, который описывает отдельный фрейм внутри всей структуры. Обязательный параметр для него — атрибут src, который задает URL HTML — документа или изображения для отображения в этом фрейме. Также лучше задать фрейму имя при помощи атрибута name. Это позволит использовать данное имя в качестве значения атрибута target элемента А и управлять тем, в какой фрейм должна загружаться ссылка. Имена фреймов не могут начинаться с цифр, в качестве начальных символов допустимы только буквы латинскою алфавита (az, AZ).

Когда в структуре фреймов не задана рамка между фреймами, их содержимое может слишком плотно примыкать друг к другу, что будет не очень красиво выглядеть. Если хотите раздвинуть содержимое фреймов и при этом все-таки не включать отображение границ между ними, то это можно сделать, задав внутри фреймов отступы. Размер этих отступов задается в пикселях и попарно: для отступов сверху и снизу атрибутом marginheight,
а для отступов справа и слева атрибутом marginwidth. Тогда расстояние между содержимым соседних фреймов будет равно сумме соответствующих отступов этих фреймов.

Должна ли отображаться рамка вокруг отдельною фрейма, определяется его атрибутом frameborder. Значение yes (или 1) говорит о том, что рамка должна быть, значение no (или 0) указывает, что рамки быть не должно.
Пользователь может изменять размер фреймов, созданный HTML документом. Для этого достаточно подвести курсор мыши к границе фреймов (неважно, видны эти границы или нет) и стандартным для операционной системы способом изменить размер окна.
В Windows курсор мыши примет вид двунаправленной черной стрелки. Нажав левую кнопку мыши, можно передвинуть границу окна. Аналогично можно изменить и размер фрейма, поскольку фрейм это тоже окно. Если вы рассчитали размеры своих фреймов и не хотите, чтобы пользователь менял их, задайте атрибут noresize. В результате изменение размеров будет запрещено.
Как мы уже говорили ранее, полосы прокрутки у фрейма появляются в том случае, если его содержимое в заданных его границах полностью не помещается. Наличие полос прокрутки регулируется атрибутом scrolling. Допустимы три значения yes, no и auto.
Значение auto соответствует автоматическому появлению полос прокрутки в тех случаях, когда это действительно необходимо. Если содержимое видно и так, полос прокрутки нет, если часть содержимого не помещается появляется нужная полоса прокрутки.
Значение yes включает обе полосы прокрутки независимо от того, нужны они или нет. Иногда это может выглядеть не очень красиво.
Значение no запрещает показывать полосы прокрутки совсем. Будьте осторожны с этим значением, поскольку при его указании можете лишить пользователя возможности увидеть все содержимое фрейма, Когда оно не помещается в нем полностью. Все атрибуты элемента FRAME приведены в таблице.

Блог только про Java

Учимся программировать на Java с нуля

Определение подходящего размера фрейма

Запомните, если размер не задан явно, все фреймы по умолчанию имеют размер 0x0 пикселей. Чтобы не усложнять наш пример, мы задали размеры фреймов так, чтобы окно нормально отображалось на большинстве мониторов. Однако в профессиональных приложениях сначала нужно проверить разрешающую способность экрана и написать код, изменяющий размер фрейма в соответствии с полученной величиной: окно, которое прекрасно смотрится на кране портативного компьютера, на экране дисплея с большой разрешающей способностью будет выглядеть как почтовая марка.


Для того чтобы определить размер экрана, надо выполнить следующие действия. Сначала следует вызвать статический метод getDefaultToolkit() класса Toolkit, который вернет объект Toolkit. (Класс Toolkit содержит много методов, предназначенных для взаимодействия с оконной системой конкретной платформы). Затем надо вызвать метод getScreenSize(), который вернет размер экрана в виде объекта Dimension. Объект Dimension содержит ширину и высоту в общедоступных(!) переменных w >

Мы также предоставим пиктограмму для фрейма. Поскольку процесс изображения рисунков на экране также зависит от операционной системы, для загрузки рисунка нам снова нужен объект Toolkit. Затем этот рисунок устанавливается в качестве пиктограммы.

В зависимости от операционной системы эта пиктограмма выводится по-разному. Например, в системе Windows пиктограмма отображается в левом верхнем углу окна, и ее можно увидеть в списке активных задач, если нажать клавиши .

Программист, скоро пополнение в семье? Не забудь вовремя купить коляску трость для малыша. Доступные цены специально для программистов Java!

Ниже дается еще несколько дополнительных советов по обращению с фреймами.

    Если ваш фрейм содержит только стандартные компоненты, такие как кнопки и текстовые поля, вы можете просто вызвать метод pack(), чтобы установить размер фрейма. Фрейм будет установлен в минимальной размер, позволяющий уместить все его компоненты. Довольно часто приходится устанавливать главный фрейм программы в максимальный размер. Начиная с Java SE 1.4, вы можете просто максимизировать фрейм, вызывая:

размеры фрейма

31.03.2010, 12:51

Непонятные размеры фрейма и панелей
Всем привет. Возникла такая вот проблема: графические приложения пишу не давно, пользуюсь.

Панель, изменяющая свои размеры при изменении размеров фрейма
Поставил я сам себе задачу, бьюсь с ней уже 2 дня. Жалко потраченного времени. есть фрейм. В нем.

2 фрейма
Суть такая, есть 2 фрейма, 1 главный, запускается при старте. 2-й, дополнительный. Необходимо из.

Размер фрейма
Приветы форумчанам! Вопрос такой: Усть JFrame в него добавляется JСomponent, JСomponent по щелчку.

Перерисовка фрейма
Делаю смену скина программы в ее настройках. Как можно перерисовать заново окно? Прописывал.

01.04.2010, 09:55 2 05.10.2015, 23:44 3

Выдает мне такой текст в консоли:

«1% от ширины фрейма = 0
1% от высоты фрейма = 0″

05.10.2015, 23:55 4 06.10.2015, 02:06 5

Значит frame Добавлено через 1 минуту
Так здесь и получаю. а что, он не знает, что есть объект this? Разрешает же, не ругается, значит должен цепляться за что-то. прямо в классе основном, единственном и получаю.

Добавлено через 30 минут
Впрочем нет, я писал ведь System.out.print(this.getHeight());
возвращает 0

Добавлено через 53 секунды
Вообщем, вот класс мой.. не знаю уже..

06.10.2015, 02:14 6

JPanel graphicShellmenu = new graphicPanels.GraphicMainMenu(); поясни куда идёт ссылка.

Добавлено через 50 секунд
Ща разберёмся, хотя у тебя кода ужас как много оО )))

06.10.2015, 04:21 7

Эм.. много. да я только начал.. тут всего классов.. 20 наверное.

Добавлено через 1 минуту
Оу, 26 уже -_- Все равно — это лишь почти готовый интерфейс. Начинка еще в одном классе болтается, неразобранная. Рано начинать ее встраивать, если пока некуда.

Добавлено через 1 минуту
Мне кажется, или мы каким-то чудом одну и ту же беседу в двух ветках ведем? -_-«

Добавлено через 1 минуту
А, ну да, это на ту же тему, но ближе к изменениям размеров. Так неужели нет основы любого фрема, которую можно взять для отсчета от нее остальных динамических координат? Почему же у меня this.getSize() возвращает 0.

Добавлено через 1 минуту
Я думал, это потому, что setVisible() стоит после, но поднял вверх его — нет результата, более того, я его вообще не нашел в данном классе. Могло ли то произойти из-за использования МенеджераФреймов — отдельного класса, где указано setVisible уже. посмотрю еще..

Добавлено через 10 минут
Мда. не вышло. Вот ответ консоли: ТЕСТ ПАРАМЕТРОВ ОКНА:00
А вот код, снова в этом же фрейме..

int O1 = this.getWidth();
int O2 = this.getHeight();
System.out.println(«ТЕСТ ПАРАМЕТРОВ ОКНА:» + O1 + O2);

Добавлено через 42 секунды
Ни-че-го! -_- Я уже убрал его из МенеджераФремов и прописал здесь в начале самом setVisible(), он должен уже был получить все размеры!

Что такое фрейм в html. Определение размеров фреймов. Использование строк, а не столбцов

На многих современных сайтах присутствуют «прилипающие » меню навигации, которые отображаются либо в боковой панели, либо в верхней части, когда вы прокручиваете страницу вверх и вниз. Но свойства CSS , которые позволяют создавать «прилипающие » меню, не всегда поддерживается браузерами. Ранее для реализации подобного функционала использовались фреймы в HTML .

Разница между Frames и Iframes

При использовании frameset вы разделяете видимую часть окна браузера на несколько фреймов. Каждый фрейм имеет собственное содержимое, которое не затрагивает содержимое следующего. Frames и Iframes выполняют аналогичную функцию — встраивают ресурс в веб-страницу, но они принципиально отличаются друг от друга:

  • Frames — это элементы, определяющие макет;
  • Iframes — элементы, добавляющие контент.

История и будущее фреймов

W3C признала фреймы устаревшими в HTML5 . Данное решение было аргументировано тем, что фреймы HTML отрицательно сказываются на юзабилити и доступности. Давайте разберемся, обоснованы ли эти претензии.

Проблемы с фреймами

  • Проблемы юзабилити: с увеличением популярности мобильных устройств с небольшими экранами возникла необходимость того, чтобы сайты предлагали пользователям несколько представлений, которые изменяются в зависимости от размера окна просмотра. Хотя фреймами можно манипулировать, чтобы обеспечить определенную степень адаптивности, но они не слишком хорошо подходят для создания адаптивных сайтов;
  • Доступность: экранные дикторы и другие вспомогательные технологии довольно плохо считывают и взаимодействуют с сайтами, которые используют фреймы.

В данный момент в веб-разработке прослеживается глобальная тенденция разделения содержимого веб-страницы от ее представления:

  • Содержимое должно добавляться и определяться разметкой, например, через HTML ;
  • Представление определяется языками, такими как CSS и JavaScript .

Использование фреймов изначально предполагает создание специфического внешнего вида и структуры, в то время как задачи представления должны обрабатываться с помощью CSS .

Будущее фреймов

Хотя на сегодняшний день все современные браузеры поддерживают фреймы, W3C однозначно заявила , что фреймы « не должны использоваться веб-разработчиками «. Если у вас есть сайт, который использует фреймы, вам стоит задуматься о переходе на другие технологии. В какой-то момент браузеры перестанут поддерживать фреймы, и, когда это произойдет, сайты, применяющие их, станут непригодными для использования.

Как сделать фреймы в HTML

В разработке новых сайтов фреймы использоваться не должны, но для веб-мастеров, которые занимаются поддержкой старых ресурсов, умение применять их может оказаться полезным.

Основная концепция фреймов

Основная концепция фреймов довольно проста:

  • Используйте элемент frameset в определенном месте элемента body в HTML-документе ;
  • Используйте элемент frame , чтобы создать фреймы для содержимого веб-страницы;
  • Используйте атрибут src для идентификации ресурса, который должен загружаться внутри фрейма;
  • Создайте для каждого фрейма HTML отдельный файл с содержимым.

Рассмотрим несколько примеров того, как это работает. Сначала нужно создать несколько HTML-документов , с которыми мы будем работать. Давайте создадим четыре различных HTML-документа . Вот, что будет содержать первый из них:

Илон Маск рекомендует:  Тег object
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL