Атрибут frameborder тега <frameset>


Описание

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

Пример использования:
<frameset cols="30%,70%" frameborder="0"> <frame src="menu.html"> <frame src="content.html"> </frameset>

Допустимые значения:

Значение Эффект
1 Границы фреймов видны (по умолчанию)
0 Границы фреймов скрыты

Современные CSS-аналоги:

<div class="modern-layout"> <aside>Меню</aside> <main>Контент</main> </div> <style> .modern-layout { display: grid; grid-template-columns: 30% 70%; } /* Вариант 1: Без границ */ .modern-layout { gap: 0; } /* Вариант 2: С границами */ .modern-layout { gap: 1px; background: #ccc; } .modern-layout > * { background: white; } </style>

Проблемы устаревшего подхода:

  • Ограниченный контроль над внешним видом границ
  • Несоответствие современным стандартам HTML5
  • Невозможность тонкой настройки стилей
  • Отсутствие поддержки в современных браузерах

Рекомендации по замене:

  1. Используйте CSS-свойство border для отдельных элементов
  2. Применяйте gap в CSS Grid для разделения областей
  3. Для сложных границ используйте псевдоэлементы
  4. Реализуйте разделители с возможностью изменения размера

Пример продвинутой замены:

<div class="resizable-layout"> <div class="panel">Левая панель</div> <div class="divider"></div> <div class="panel">Правая панель</div> </div> <style> .resizable-layout { display: flex; height: 100vh; } .panel { flex: 1; } .divider { width: 1px; background: #ccc; cursor: col-resize; } </style> <script> // Реализация изменения размера через JavaScript </script>

Примечание: Хотя атрибут frameborder был простым решением в эпоху фреймов, современные CSS-технологии предоставляют гораздо более мощные и гибкие средства управления границами и разделителями между элементами макета.