Стилі браузера за замовчуванням відображають таблицю та її комірки без видимих меж та фону, при цьому комірки всередині таблиці не прилягають впритул один до одного. За допомогою CSS-стилів можна красиво оформити таблицю відповідно до її вмісту.
Таблиці з проміжками між рядками допомагають сконцентруватися на зв'язаній інформації, розташованій у цьому рядку таблиці, але в сусідніх осередках. Для того, щоб відокремити текст від картинки, поміщаємо його в іншу комірку, об'єднавши при цьому два комірки в заголовку таблиці
Розмітка HTML
Стилі CSS
table (
border-spacing: 0 10px;
font-family: "Open Sans", sans-serif;
font-weight: bold;
}
th (
padding: 10px 20px;
background: #56433D;
color: #F9C941;
border-right: 2px solid;
font-size: 0.9em;
}
th:first-child (
text-align: left;
}
th:last-child (
border-right: none;
}
td (
vertical-align: middle;
padding: 10px;
font-size: 14px;
text-align: center;
border-top: 2px solid #56433D;
border-bottom: 2px solid #56433D;
border-right: 2px solid #56433D;
}
td:first-child (
border-left: 2px solid #56433D;
border-right: none;
}
td:nth-child(2)(
text-align: left;
}
Використовуючи такий прийом, можна ефектно оформити таблицю за допомогою контрастних кольорів, які гармонійно впишуться у колірну гаму вашого сайту
Розмітка HTML
Company | Q1 | Q2 | Q3 | Q4 |
---|---|---|---|---|
Microsoft | 20.3 | 30.5 | 23.5 | 40.3 |
50.2 | 40.63 | 45.23 | 39.3 | |
Apple | 25.4 | 30.2 | 33.3 | 36.7 |
IBM | 20.4 | 15.6 | 22.3 | 29.3 |
Стилі CSS
table (
font-size: 14px;
border-collapse: collapse;
text-align: center;
}
th, td:first-child (
background: #AFCDE7;
color: white;
padding: 10px 20px;
}
th, td (
border-style: solid;
border-width: 0 1px 1px 0;
border-color: white;
}
td (
background: #D8E6F3;
}
text-align: left;
}
Завдяки додаванню до специфікації CSS3 властивості border-radius з'явилася можливість закруглення кутів таблиці без використання фонових зображень. Щоб досягти такого ефекту, потрібно закруглити кути відповідних осередків.
Розмітка HTML
- Аналогічно з прикладом 2.
Стилі CSS
table (
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
font-size: 14px;
border-radius: 10px;
border-spacing: 0;
text-align: center;
}
th (
background: #BCEBDD;
color: white;
text-shadow: 0 1px 1px #2D2020;
padding: 10px 20px;
}
th, td (
border-style: solid;
border-width: 0 1px 1px 0;
border-color: white;
}
th:first-child, td:first-child (
text-align: left;
}
th:first-child (
}
th:last-child (
border-right: none;
}
td (
padding: 10px 20px;
background: #F8E391;
}
tr:last-child td:first-child (
border-radius: 0 0 0 10px;
}
tr:last-child td:last-child (
border-radius: 0 0 10px 0;
}
tr td:last-child (
border-right: none;
}
4. Таблиця з роздільними осередками
Розмітка HTML
- Аналогічно з прикладом 2.
Стилі CSS
table (
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
text-align: left;
border-collapse: separate;
border-spacing: 5px;
background: #ECE9E0;
color: #656665;
border: 16px solid #ECE9E0;
border-radius: 20px;
}
th (
font-size: 18px;
padding: 10px;
}
td (
background: #F5D7BF;
padding: 10px;
}
Розмітка HTML
My working weeks, March 2015 | ||||
---|---|---|---|---|
Monday | Tuesday | Wednesday | Thursday | Friday |
2 | 3 | 4 | 5 | 6 |
9 | 10 | 11 | 12 | 13 |
16 | 17 | 18 | 19 | 20 |
23 | 24 | 25 | 26 | 27 |
30 | 31 |
Стилі CSS
table (
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
text-align: center;
border-collapse: collapse;
border-spacing: 5px;
background: #E1E3E0;
border-radius: 20px;
}
th (
font-size: 22px;
font-weight: 300;
padding: 12px 10px;
color: #F56433;
}
tbody tr:nth-child(2) (
border-bottom: 2px solid #F56433;
}
td (
padding: 10px;
color: #8D8173;
}
Розмітка HTML
Employee | Salary | Bonus | Supervisor |
---|---|---|---|
Stephen C. Cox | $300 | $50 | Bob |
Josephin Tan | $150 | — | Annie |
Joyce Ming | $200 | $35 | Andy |
James A. Pentel | $175 | $25 | Annie |
Стилі CSS
table (
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
font-size: 14px;
text-align: left;
border-collapse: collapse;
border-radius: 20px;
box-shadow: 0 0 0 10px #F2906B;
color: #452F21;
}
th (
padding: 10px 8px;
background: white;
}
table th:first-child (
border-top-left-radius: 20px;
}
table th:last-child (
border-top-right-radius: 20px;
}
td (
border-top: 10px solid #F2906B;
padding: 8px;
background: white;
}
table td:first-child (
border-bottom-left-radius: 20px;
}
table td:last-child (
border-bottom-right-radius: 20px;
}
Вертикальна зебра в оформленні таблиці дозволить наголосити на стовпцях, а ефект при наведенні на рядок додасть привабливості такій таблиці.
Розмітка HTML
Q1 | Q2 | Q3 | Q4 | |
---|---|---|---|---|
Microsoft | 20.3 | 30.5 | 23.5 | 40.3 |
50.2 | 40.63 | 45.23 | 39.3 | |
Apple | 25.4 | 30.2 | 33.3 | 36.7 |
IBM | 20.4 | 15.6 | 22.3 | 29.3 |
Стилі CSS
table (
border-spacing: 0;
empty-cells: hide;
}
td (
padding: 10px 20px;
text-align: center;
transition: all 0.5s linear;
}
td:first-child (
text-align: left;
color: #3D3511;
font-weight: bold;
}
th (
padding: 10px 20px;
color: #3D3511;
border-bottom: 1px solid #F4EEE8;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
}
td:nth-child(even) (
background: #F6D27E;
}
td:nth-child(odd) (
background: #D1C7BF;
}
th:nth-child(even) (
background: #F6D27E;
}
th:nth-child(odd) (
background: #D1C7BF;
}
.round-top (
border-top-left-radius: 5px;
}
.round-bottom (
border-bottom-left-radius: 5px;
}
tr:hover td(
background: #D1C7BF;
font-weight: bold;
}
Розмітка HTML
Стилі CSS
table (
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
border-collapse: collapse;
color: #686461;
}
caption (
padding: 10px;
color: white;
background: #8FD4C1;
font-size: 18px;
text-align: left;
font-weight: bold;
}
th (
border-bottom: 3px solid #B9B29F;
padding: 10px;
text-align: left;
}
td (
padding: 10px;
}
tr:nth-child(odd) (
background: white;
}
tr:nth-child(even) (
background: #E8E6D1;
}
Розмітка HTML
Comedy | Adventure | Action | Children |
---|---|---|---|
Scary Movie | Indiana Jones | The Punisher | Wall-E |
Epic Movie | Star Wars | Bad Boys | Madagascar |
Spartan | LOTR | Die Hard | Finding Nemo |
Dr. Dolittle | The Mummy | 300 | A Bug's Life |
Стилі CSS
Table_col (
font-family: "Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
font-size: 14px;
width: 660px;
background: white;
text-align: left;
border-collapse: collapse;
color: #3E4347;
}
.table_col th:first-child, .table_col td:first-child (
color: #F5F6F6;
border-left: none;
}
.table_col th (
font-weight: normal;
border-bottom: 2px solid #F5E1A6;
padding: 8px 10px;
}
.table_col td (
border-right: 20px solid white;
border-left: 20px solid white;
padding: 12px 10px;
color: #8b8e91;
}
Розмітка HTML
Company | Q1 | Q2 | Q3 | Q4 |
---|---|---|---|---|
Microsoft | 20.3 | 30.5 | 23.5 | 40.3 |
50.2 | 40.63 | 45.23 | 39.3 | |
Apple | 25.4 | 30.2 | 33.3 | 36.7 |
IBM | 20.4 | 15.6 | 22.3 | 29.3 |
Стилі CSS
Table_blur (
background: #f5ffff;
border-collapse: collapse;
text-align: left;
}
.table_blur th (
border-top: 1px solid #777777;
box-shadow: inset 0 1px 0 #999999, inset 0 -1px 0 #999999;
background: linear-gradient(#9595b6, #5a567f);
color: white;
padding: 10px 15px;
position: relative;
}
.table_blur th:after (
content: "";
display: block;
position: absolute;
left: 0;
top: 25%;
height: 25%;
width: 100%;
background: linear-gradient(rgba(255, 255, 255, 0), rgba(255,255,255,.08));
}
.table_blur tr:nth-child(odd) (
background: #ebf3f9;
}
.table_blur th:first-child (
border-left: 1px solid #777777;
border-bottom: 1px solid #777777;
box-shadow: inset 1px 1px 0 #999999, inset 0 -1px 0 #999999;
}
.table_blur th:last-child (
border-right: 1px solid #777777;
border-bottom: 1px solid #777777;
box-shadow: inset -1px 1px 0 #999999, inset 0 -1px 0 #999999;
}
.table_blur td (
border: 1px solid #e3eef7;
padding: 10px 15px;
position: relative;
transition: all 0.5s ease;
}
.table_blur tbody:hover td (
color: transparent;
text-shadow: 0 0 3px #a09f9d;
}
.table_blur tbody:hover tr:hover td (
color: #444444;
text-shadow: none;
}
Таблиці є елементом, що широко використовується для представлення різних даних на презентаціях, лекціях, в рекламних листівках і не тільки. Завдяки своїй наочності, універсальності та простоті таблиці також повсюдно застосовують на сайтах, щоб краще донести до читача потрібний матеріал. Додаючи до таблиць всю міць стилів можна дуже успішно вписати таблиці в дизайн веб-сайту, наочно і прекрасно уявити табличні дані.
Ширина таблиці
За замовчуванням ширина таблиці встановлюється браузером самостійно, виходячи з обсягу табличних даних. Якщо тексту в осередках багато, тоді таблиця займатиме всю доступну їй ширину, а якщо мало, ширина таблиці автоматично зменшиться. За наявності на сторінці кількох таблиць їх різна ширина виглядає часом недбало. Так що краще явно встановити ширину таблиці у відсотках, пікселях, em або будь-яких інших одиницях CSS, як показано в прикладі 1.
Приклад 1. Ширина таблиці у відсотках
Table ( width: 100%; ) .tbl-medium ( width: 60%; ) .tbl-small ( width: 200px; )
У цьому прикладі ширина 100% застосовується до всіх таблиць. Знову ж таки, класи допомагають встановити ширину для вибраних таблиць задіявши раніше створений клас. Щоб вказати таблиці ширину 200 пікселів треба додати до елемента
У цьому прикладі для всіх таблиць на сторінці встановлено вирівнювання по центру.
Колір фону
Колір фону одночасно всіх осередків таблиці встановлюється через властивість background, яке застосовується до селектора table. При цьому слід пам'ятати про правила використання стилів, зокрема, успадкування властивостей елементів. Якщо одночасно з table задати колір у селектора td або th то він і буде встановлений як тло (приклад 3).
Приклад 3. Колір тла
Вид з'єднання | ||
---|---|---|
Вал | Втулка | |
Вільне | H9 | D10 |
Нормальне | N9 | I s 9 |
Щільне | P9 |
Результат цього прикладу показано на рис. 1.
Мал. 1. Зміна кольору тла
Якщо нам потрібно зробити зебру - так називається чергування рядків різного кольору, слід скористатися псевдокласом :nth-child , додаючи його до селектора tr . Щоб зебра поширювалася тільки на тіло таблиці, а не її заголовок, відокремимо їх один від одного за допомогою елементів і
(Приклад 4).Приклад 4. Створення зебри
Інтервали розмірів, мм | Допуск IT, мкм, для кваліфікації | |||
---|---|---|---|---|
5 | 6 | 7 | 8 | |
До 3 | 4 | 6 | 10 | 14 |
Св. 3 до 6 | 5 | 8 | 12 | 18 |
Св. 6 до 10 | 6 | 9 | 15 | 22 |
Св. 10 до 18 | 8 | 11 | 18 | 27 |
Св. 18 до 30 | 9 | 13 | 21 | 33 |
Св. 30 до 50 | 11 | 16 | 25 | 39 |
Св. 50 до 80 | 13 | 19 | 30 | 46 |
Результат цього прикладу показано на рис. 2.
Мал. 2. Зебра
Значення even у селектора: nth-child застосовує стиль до всіх парних рядків і задає їх колір тла. Можна також змінити його на odd, тоді сірим кольором будуть виділятися непарні рядки.
Аналогічно кольором виділяються не рядки, а колонки, для цього слід використовувати селектор tbody td:nth-child(even) .
Поля всередині осередків
Полем називається відстань між кордоном осередку та його вмістом. Без полів текст у таблиці «налипає» на рамку, погіршуючи цим його сприйняття, додавання ж полів дозволяє поліпшити читабельність тексту. Для цієї мети застосовується стильова властивість padding, яка працює з селектором td або th, як показано вище в прикладах 3 і 4. Зазвичай вказують одне значення, воно тоді задає порожній простір навколо вмісту осередку відразу з усіх боків. Два значення пишуться, коли треба задати різні поля по вертикалі (перше значення) та горизонталі (друге значення).
Відстань між осередків
Між вічками є невелика порожня відстань, яка не видно, поки для осередків не встановити кордон або фоновий колір. Вихідна ця відстань дорівнює 2px і його можна змінити за допомогою властивості border-spacing, додаючи його до селектора table (приклад 5).
Приклад 5. Використання border-spacing
Table ( border-spacing: 3px; /* Відстань між осередків */ ) thead th ( background: #e08156; /* Колір фону заголовка */ color: #333; /* Колір тексту */ ) td, th ( padding: 5px ; /* Поля в осередках */ background: #4c715b; /* Колір фону осередків */ color: #f5e8d0;
Додаючи цей стиль до будь-якої таблиці отримаємо результат, продемонстрований на рис. 3.
Мал. 3. Вид таблиці з відстанню між осередками
Якщо до table додається властивість border-collapse зі значенням collapse, то border-spacing ігнорується, тому що відстані між осередків вже немає.
Межі та рамки
Щоб чітко відокремити вміст одного осередку від іншого, до осередків додаються межі. За їх створення відповідає стильова властивість border, яка застосовується до елементів (
Приклад 6. Застосування властивості border-collapse під час створення рамок таблиці
O | X | X |
O | O | X |
X | X | O |
Різниця між межами таблиці при додаванні властивості border-collapse, а також без нього представлена на рис. 4.
Мал. 4. Вигляд таблиці під час використання border-collapse
На рис. 4а показано рамку таблиці, яка використовується за умовчанням. Зверніть увагу, що всередині таблиці всі лінії мають подвоєну товщину. Додавання border-collapse прибирає цю особливість, і товщина всіх ліній стає однаковою (рис. 4б).
Лінії не обов'язково робити для всіх сторін осередків, згідно з дизайном вони можуть відокремлювати один рядок або стовпчик від іншого. Для цього ми використовуємо властивості border-bottom, border-left та інші. Застосовувати межі до елементів
Приклад 7. Лінії між рядками
Вид з'єднання | Поля допусків ширини паза шпонки | |
---|---|---|
Вал | Втулка | |
Вільне | H9 | D10 |
Нормальне | N9 | I s 9 |
Щільне | P9 |
Результат цього прикладу показано на рис. 5.
Мал. 5. Таблиця з горизонтальними лініями
За замовчуванням текст у комірці таблиці вирівнюється ліворуч і по центру висоти. Винятком є елемент
Приклад 8. Вирівнювання вмісту осередків по горизонталі
Заголовок 1 | Осередок 1 | Осередок 2 |
---|---|---|
Заголовок 2 | Осередок 3 | Осередок 4 |
У цьому прикладі вміст
Мал. 6. Вирівнювання тексту в осередках
Вирівнювання по вертикалі в осередку завжди відбувається по її центру, якщо це не зазначено особливо. Це не завжди зручно, особливо для таблиць, у яких вміст осередків відрізняється по висоті. У такому разі вирівнювання встановлюють по верхньому краю осередку за допомогою властивості vertical-align зі значенням top, як показано в прикладі 9.
Приклад 9. Вирівнювання вмісту осередків по вертикалі
Вид з'єднання | Поля допусків ширини паза шпонки | |
---|---|---|
Вал | Втулка | |
Вільне | H9 | D10 |
Нормальне | N9 | I s 9 |
Щільне | P9 |
У цьому прикладі вирівнювання тексту відбувається по верхньому краю. Результат прикладу показано на рис. 7.
Мета уроку:Знайомство з властивостями таблиці та принципами табличної верстки CSS
Розглянемо основні CSS властивості таблиці
border
Властивість розглядається в одному і включає одночасно декілька властивостей:
- BORDER-STYLE (СТИЛЬ КОРДОНУ)
- BORDER-WIDTH (ШИРИНА КОРДОНИ)
- BORDER-COLOR (КОЛІР КОРДОНУ)
Існує також збірне правило:
table.collapse( border-collapse:collapse; ) table.separate( border-collapse:separate; )
Результат:
width та height
(висота та ширина таблиці)
Значення:
Приклад:
text-align
(Вирівнювання по горизонталі)
Значення:
- center (по центру)
- left (ліворуч)
- right (з правого краю)
- justify (по ширині)
vertical-align
(Вирівнювання по вертикалі)
Значення:
- baseline (по базовій лінії)
- sub (як підіндекс)
- super (як надіндекс)
- top (по верхньому краю)
- middle (посередині)
- bottom (по нижньому краю)
- % (від висоти міжрядкового інтервалу)
Приклад:
padding
(Внутрішні відступи в таблиці)
background-color (заднє тло)
color (колір тексту)
Таблична верстка CSS
Завдяки великій кількості властивостей таблиць та варіаціям їх оформлення, таблиці довгий час були деяким станартом верстки веб-сторінок. Якщо зробити межі таблиці невидимими, можна використовувати її окремі осередки як окремих блоків сраницы: шапка, меню, підвал тощо.
Але це не зовсім правильно, адже кожному тегу є своє призначення, і таблиці не мали служити для верстки сторінок. Однак відсутність альтернативи спонукала дизайнерів саме на такий метод верстки.
Зараз є інший спосіб - використання шарів, які поступово замінили таблиці у цьому виді роботи з веб-сторінкою. Однак і в наш час деякі дизайнери успішно використовують табличну верстку.
Таблична верстка із двох колонок
Одне з найпоширеніших методів верстки — дві колонки, тобто. сторінка поділяється на дві частини.
Приклад:задати основний каркас сторінки з двох колонок: перша — з фіксованим розміром, друга — на область браузера, що залишилася. Виконати завдання за допомогою CSS стилів ()
Виконання:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "right" > 2</td> </ tr > </ table > ... |
1 | 2 |
Результат:
Приклад:поставити різне тлоосередків (щоб розділити дві колонки один від одного) та встановити відстань між колонками (розділювач)
Виконання:
Додамо нові властивості стилів:
/* для лівої комірки */ td#left( width:200px; background: #ccc; border:1px solid black; /* тимчасово позначимо межі */ ) /* для правої комірки */ td#right( background: #fc3; border:1px solid black; /* тимчасово позначимо межі */ ) /* для роздільника */ #razdel( width: 10px; /* Відстань між колонками */
Всі разом:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "razdel" > td > <td id = "right" > 2</td> </ tr > </ table > |
1 | 2 |
Для роздільника було додано новий осередок.
Результат:
Приклад:зробити роздільник між колонками таблиці, використовуючи пунктирну лінію кордону суміжних осередків
Виконання:
Додамо нові властивості меж для осередків:
/* для лівої комірки */ td#left( width:200px; background: #ccc; /* Колір фону лівої колонки */ /* нове */ border-right: 1px dashed #000; /* Параметри правого пунктирного кордону */ )
Всі разом:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "right" > 2</td> </ tr > </ table > |
1 | 2 |
Результат:
Таблична верстка із трьох колонок
Існує поняття фіксованого або гумового макета верстки.
Фіксований макет CSS
- При використанні фіксованого макета ширина всієї таблиці задається у пікселях, і тоді, незалежно від дозволу монітора та вікна браузера, таблиця завжди матиме однакову ширину.
- В такому випадку ширину інших колонок варто також зробити фіксованою.
- Можна не вказати ширину одного осередку, тоді вона буде обчислена автоматично, виходячи з розмірів інших осередків та всієї таблиці.
Приклад:створити шаблон сторінки із трьох колонок. Використовувати фіксований макет табличної верстки:
- ліва колонка - 150 пікселів;
- середня колонка - 400 пікселів;
Виконання:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "central" > 2</td> <td id = "right" > 3</td> </ tr > </ table > |
1 | 2 | 3 |
Результат:
Гумовий макет
- Ширина таблиціпри використанні «гумового» дизайну встановлюється у % від ширини вікна браузера. Т.о. при зміні вікна браузера змінюються і розміри таблиці.
- Ширина всіх осередківможе встановлюватися в процентах.
- Другий варіант, коли ширина деяких осередківвстановлюється в процентах, а деяких - у пікселях.
Важливо:Сума ширини всіх колонок повинна вийти 100% незалежно від ширини таблиці.
Приклад:
- ліва колонка - 20%;
- середня колонка - 40%;
- права колонка - 40%;
Встановити фон для колонок та візуально розділити колонки кордоном.
Виконання:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "central" > 2</td> <td id = "right" > 3</td> </ tr > </ table > |
1 | 2 | 3 |
Результат:
Розглянемо другий варіант, коли ширина центральної колонки автоматично підбирається браузером; прикладом може бути малюнок:
Приклад:створити шаблон сторінки із трьох колонок. Використовувати гумовий макет табличної верстки:
- ліва колонка - 150 пікселів;
- середня колонка - 40%;
- права колонка - 200 пікселів;
Встановити фон для колонок та візуально розділити колонки кордоном.
Виконання:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "central" > 2</td> <td id = "right" > 3</td> </ tr > </ table > |
1 | 2 | 3 |
Результат:
Результат буде приблизно такий самий, тільки розтягування буде відбувається за рахунок центральної колонки.
Використання вкладеної таблиці у гумовому макеті
Якщо ширина двох колонок встановлюється у відсотках, а третьої - у пікселях, обійтися однією таблицею не вийде. Так, якщо ширина всієї таблиці дорівнює 100 відсотків, першої колонки - 200 пікселів, а колонок, що залишилися, по 20 відсотків, то просте обчислення показує, що розмір першої колонки виходить рівним 60 відсотків. У такому разі задане значення в пікселях браузером не сприйметься, а розмір буде встановлений у відсотках.
- Вихідна таблиця створюється із двома осередками. Ширина таблиці задається у відсотках.
- Для лівого осередку(першої колонки) встановлюється ширина у пікселях.
- Ширина правого осередку(основа для інших колонок) не вказується. Всередину цього осередку вставляється друга таблиця, що теж складається з двох осередків.
- У осередків вкладеної таблиці ширина встановлюється у відсотках.
- Ширина внутрішньої таблиці має бути встановлена в 100 відсотківщоб ця таблиця займала весь вільний простір у зовнішній таблиці.
- Ширина центральної та правої колонки обчислюється щодо ширини комірки, а не зовнішньої таблиці загалом.
Приклад:створити шаблон сторінки із трьох колонок. Використовувати гумовий макет із вкладеною таблицею:
- ліва колонка - 150 пікселів;
- середня колонка - 60%;
- права колонка - 40%;
Встановити фон для колонок.
Виконання:
Атрибути тегів cellpadding і cellspacing тут необхідні, щоб не було «зазору» між таблицями. Мета уроку:Знайомство з властивостями таблиці та принципами табличної верстки CSS Розглянемо основні CSS властивості таблиці borderВластивість розглядається в одному і включає одночасно декілька властивостей:
Існує також збірне правило: table.collapse( border-collapse:collapse; ) table.separate( border-collapse:separate; ) Результат: width та height
|
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "right" > 2</td> </ tr > </ table > ... |
1 | 2 |
Результат:
Приклад:встановити різний фон осередків (щоб розділити дві колонки один від одного) і встановити відстань між колонками (розділювач)
Виконання:
Додамо нові властивості стилів:
/* для лівої комірки */ td#left( width:200px; background: #ccc; border:1px solid black; /* тимчасово позначимо межі */ ) /* для правої комірки */ td#right( background: #fc3; border:1px solid black; /* тимчасово позначимо межі */ ) /* для роздільника */ #razdel( width: 10px; /* Відстань між колонками */
Всі разом:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "razdel" > td > <td id = "right" > 2</td> </ tr > </ table > |
1 | 2 |
Для роздільника було додано новий осередок.
Результат:
Приклад:зробити роздільник між колонками таблиці, використовуючи пунктирну лінію кордону суміжних осередків
Виконання:
Додамо нові властивості меж для осередків:
/* для лівої комірки */ td#left( width:200px; background: #ccc; /* Колір фону лівої колонки */ /* нове */ border-right: 1px dashed #000; /* Параметри правого пунктирного кордону */ )
Всі разом:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "right" > 2</td> </ tr > </ table > |
1 | 2 |
Результат:
Таблична верстка із трьох колонок
Існує поняття фіксованого або гумового макета верстки.
Фіксований макет CSS
- При використанні фіксованого макета ширина всієї таблиці задається у пікселях, і тоді, незалежно від дозволу монітора та вікна браузера, таблиця завжди матиме однакову ширину.
- В такому випадку ширину інших колонок варто також зробити фіксованою.
- Можна не вказати ширину одного осередку, тоді вона буде обчислена автоматично, виходячи з розмірів інших осередків та всієї таблиці.
Приклад:створити шаблон сторінки із трьох колонок. Використовувати фіксований макет табличної верстки:
- ліва колонка - 150 пікселів;
- середня колонка - 400 пікселів;
Виконання:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "central" > 2</td> <td id = "right" > 3</td> </ tr > </ table > |
1 | 2 | 3 |
Результат:
Гумовий макет
- Ширина таблиціпри використанні «гумового» дизайну встановлюється у % від ширини вікна браузера. Т.о. при зміні вікна браузера змінюються і розміри таблиці.
- Ширина всіх осередківможе встановлюватися в процентах.
- Другий варіант, коли ширина деяких осередківвстановлюється в процентах, а деяких - у пікселях.
Важливо:Сума ширини всіх колонок повинна вийти 100% незалежно від ширини таблиці.
Приклад:
- ліва колонка - 20%;
- середня колонка - 40%;
- права колонка - 40%;
Встановити фон для колонок та візуально розділити колонки кордоном.
Виконання:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "central" > 2</td> <td id = "right" > 3</td> </ tr > </ table > |
1 | 2 | 3 |
Результат:
Розглянемо другий варіант, коли ширина центральної колонки автоматично підбирається браузером; прикладом може бути малюнок:
Приклад:створити шаблон сторінки із трьох колонок. Використовувати гумовий макет табличної верстки:
- ліва колонка - 150 пікселів;
- середня колонка - 40%;
- права колонка - 200 пікселів;
Встановити фон для колонок та візуально розділити колонки кордоном.
Виконання:
</ head > <body > <table id = "maket" cellspacing = "0" > <tr > <td id = "left" > 1</td> <td id = "central" > 2</td> <td id = "right" > 3</td> </ tr > </ table > |
1 | 2 | 3 |
Результат:
Результат буде приблизно такий самий, тільки розтягування буде відбувається за рахунок центральної колонки.
Використання вкладеної таблиці у гумовому макеті
Якщо ширина двох колонок встановлюється у відсотках, а третьої - у пікселях, обійтися однією таблицею не вийде. Так, якщо ширина всієї таблиці дорівнює 100 відсотків, першої колонки - 200 пікселів, а колонок, що залишилися, по 20 відсотків, то просте обчислення показує, що розмір першої колонки виходить рівним 60 відсотків. У такому разі задане значення в пікселях браузером не сприйметься, а розмір буде встановлений у відсотках.
- Вихідна таблиця створюється із двома осередками. Ширина таблиці задається у відсотках.
- Для лівого осередку(першої колонки) встановлюється ширина у пікселях.
- Ширина правого осередку(основа для інших колонок) не вказується. Всередину цього осередку вставляється друга таблиця, що теж складається з двох осередків.
- У осередків вкладеної таблиці ширина встановлюється у відсотках.
- Ширина внутрішньої таблиці має бути встановлена в 100 відсотківщоб ця таблиця займала весь вільний простір у зовнішній таблиці.
- Ширина центральної та правої колонки обчислюється щодо ширини комірки, а не зовнішньої таблиці загалом.
Приклад:створити шаблон сторінки із трьох колонок. Використовувати гумовий макет із вкладеною таблицею:
- ліва колонка - 150 пікселів;
- середня колонка - 60%;
- права колонка - 40%;
Встановити фон для колонок.
Виконання:
Атрибути тегів cellpadding і cellspacing тут необхідні, щоб не було «зазору» між таблицями. У цій статті ви побачите, як за допомогою стилів CSSформатувати таблиці. На зорі інтернету дизайнера дуже часто використовували таблиці для створення розмітки. Зараз практично всі сайти розмічаються при допомоги CSS, А таблиці використовують за їх прямим призначенням – для відображення даних. Теги для компонування таблицьТаблицю можна зробити за допомогою наступних тегів:
|