В HTML есть инструментарий, позволяющий разделять окно WEB-браузера на большое количество скроллируемых подокон. Это и есть html-фреймы. Они намного улучшают внешний вид, а также функциональность создаваемых информсистем и WEB-приложений.
Для всякого фрейма существуют следующие утверждения:
• Свой URL, который, независимо от остальных фреймов разрешает его загружать;
• собственное имя, разрешающее к нему доступ из другого фрейма;
• размер html-фрейма можно изменить непосредственно на экране, используя мышку. Но возможно это только в том случае, если дополнительный параметр не запрещает это делать.
Эти отличительные качества html-фреймов помогают создавать (продвинутые) интерфейсные решения. К примеру:
• Размещение в одном статическом фрейме (статической) информации, которую автору нужно регулярно демонстрировать клиенту; это или набор управляющих кнопок, или графический логотип фирмы, или copyright;
• Размещение оглавления в статическом фрейме всех WEB-документов, а также их частей, которые находятся на WEB-сервере; это позволяет клиенту легко отыскивать нужную информацию;
• Создание окна результатов запросов; тогда в одном фрейме - непосредственно запрос, а в другом - его результаты;
• Создание для веб-приложений, обслуживающих базы данных, формы типа "мастер-деталь".
Синтаксис HTML-фреймов
Формат главного документа, который использует html-фреймы, внешне похож на формат обычного, лишь взамен тэга <body> применяется тэг <frameset>. Он хранит описание фреймов, а они - информацию. Всякий html-фрейм изображает индивидуальную html-страницу.
<html>
<head> ... </head>
<frameset> ... </frameset>
</html>
Документ, который содержит html-фреймы, - это специфический вид HTML-документа, так как он не содержит элемент <body> и информационной нагрузки соответственно. Он лишь описывает html-фреймы, которые только будут хранить информацию, кроме случая с двойным документом - речь о нем пойдет дальше.
</frameset>
Это общий контейнер. <frameset> описывает непосредственно все фреймы, на которые разделяется экран. Можно его разделить на несколько горизонтальных или вертикальных фреймов. Тэг <frame> изображает каждый из них отдельно. Далее подробно будет рассмотрен каждый элемент.