Атрибут cols тега <frameset> — поділ вікна на колонки


Атрибут cols визначає розмір і кількість стовпців в <frameset>.

Ширина кожного фрейму вказується в атрибуті cols в списку через кому (<frameset cols="30%, 30%, 40%, ...">).

автор: NagarD

Загальний опис

автор: NagarD

Порада

Число значеннь атрибута cols визначає кількість стовпців в <frameset>.

автор: Wsewlad

Синтаксис

<frameset cols="pixels|%|*">

Атрибут cols може отримувати 3 значень:

pixels

Розмір стовпчика в пікселях (наприклад, "100px" або просто "100")

автор: NagarD

%

Розмір стовпчика в відсотках від загального обсягу простору (наприклад, "50%")

автор: NagarD

*

Вся інша частина вільного простору повинна бути призначена цьому стовпчику

автор: NagarD

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
1 1 3 15 12 ≤11
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
4.4 18 4 2

Приклади

+ запропонувати свій приклад у пісочниці

Два записи cols і те саме, зроблене сучасною сіткою: замість зірочки — одиниця fr, решта без змін. Смуги живі — потягніть вікно вужче, і частки перерахуються так само, як колись перераховувалися фрейми. Числа під смугами — заміри з браузера на ширині 400 пікселів.

HTML

<p class="cap">1. <b>cols="25%,*,25%"</b> — точні відсотки по краях, зірочка
    забирає решту:</p>
<pre class="code">&lt;frameset cols="25%,*,25%"&gt;   →   grid-template-columns: 25% 1fr 25%</pre>
<div class="grid g1">
    <div class="cell c1">25%</div>
    <div class="cell c2">* (1fr)</div>
    <div class="cell c3">25%</div>
</div>
<p class="meas">Замір на вікні 400 px: 97 / 194 / 97 пікселів.</p>

<p class="cap">2. <b>cols="100,2*,*,20%"</b> — тут головне: зірочка це ЧАСТКА.
    <b>2*</b> бере вдвічі більше, ніж <b>*</b>:</p>
<pre class="code">&lt;frameset cols="100,2*,*,20%"&gt;   →   grid-template-columns: 100px 2fr 1fr 20%</pre>
<div class="grid g2">
    <div class="cell c1">100px</div>
    <div class="cell c2">2* (2fr)</div>
    <div class="cell c4">* (1fr)</div>
    <div class="cell c3">20%</div>
</div>
<p class="meas">Замір на вікні 400 px: 100 / 137 / 68,5 / 76 пікселів —
    між зірочками рівно два до одного.</p>

<p class="cap">3. І пастка, з якої починається більшість «білих сторінок»:</p>
<pre class="code bad">&lt;frameset cols="25%,*"&gt;
    &lt;frame src="menu.html"&gt;
    &lt;frame src="text.html"&gt;
&lt;/frameset&gt;
&lt;body&gt;
    &lt;p&gt;цього абзацу в документі не буде взагалі&lt;/p&gt;
&lt;/body&gt;</pre>

CSS

.cap {
    max-width: 620px;
    margin: 22px 0 6px;
}

.code {
    max-width: 620px;
    margin: 0 0 10px;
    padding: 10px 12px;
    border-left: 6px solid #2f6fd0;
    background: #f6f9ff;
    font: 13px/1.5 ui-monospace, monospace;
    overflow-x: auto;
}

.bad {
    border-left-color: #d64545;
    background: #fff4f4;
}

.grid {
    display: grid;
    gap: 4px;
    max-width: 620px;
    height: 70px;
    padding: 4px;
    border: 2px solid #b9c6d8;
    border-radius: 4px;
    background: #eef3fb;
}

.g1 {
    grid-template-columns: 25% 1fr 25%;
}

.g2 {
    grid-template-columns: 100px 2fr 1fr 20%;
}

.cell {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 3px;
    color: #12203a;
    font: 600 13px/1.3 system-ui, sans-serif;
    text-align: center;
    overflow: hidden;
}

.c1 {
    background: #f2b134;
}

.c2 {
    background: #72b043;
}

.c3 {
    background: #9fc0ea;
}

.c4 {
    background: #b7dc94;
}

.meas {
    max-width: 620px;
    margin: 6px 0 0;
    color: #5a6472;
    font-size: .9em;
}
автор: NagarD

cols="25%,*,25%" ділить вікно на три колонки: чверть, решта (зірочка) і ще чверть — межі між фреймами можна тягнути. Фрейми вилучено з HTML5: браузери їх ще рендерять, але в новому коді використовуй <iframe> чи звичайну верстку.

<!DOCTYPE html>
<html>
<frameset cols="25%,*,25%">
    <frame src="data:text/html;charset=utf-8,%3Cbody style='background:%23eef6ff'%3E25%25%3C/body%3E">
    <frame src="data:text/html;charset=utf-8,%3Cbody%3E%D1%81%D0%B5%D1%80%D0%B5%D0%B4%D0%B8%D0%BD%D0%B0 — *%3C/body%3E">
    <frame src="data:text/html;charset=utf-8,%3Cbody style='background:%23ffef9e'%3E25%25%3C/body%3E">
</frameset>
</html>
автор: NagarD

Різниця між HTML 4.01 та HTML5


Атрибут cols для тегу <frameset> не підтримується у HTML5.


Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле веде сходинками (розділ → тип → сторінка), а хибний ключ підкреслить хвилею.
[[!sandbox/S0oh1hBm]] Живий приклад окремим рядком — саме вікно результату. Той самий ключ зі знаком !: наберіть [[! і дійдіть сходинками до потрібної сторінки, список покаже її приклади.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Правка
Зворотний зв'язок
Вхід