Будь-який
документ складається з блоків. Наприклад, основний текст, заголовки, форма пошуку,
меню, новини і т.п. Всі блоки якимось чином позиціонуються на сторінці.
Зазвичай для цього використовуються таблиці. Питання позиціонування і створення
загальної структури сторінок ми з вами почнемо розглядати дуже скоро, а поки
поговоримо про окремих блоках, які бувають на сторінках. p>
Обладнання
блоків річ цікава, але нас, як верстальників, в першу чергу цікавить
верстка блоків. Звичайно, для унікально оформленого блоку доведеться створювати
унікальний HTML-код, але все
ж є досить багато універсальних прийомів, які зустрічаються часто -
поруч. p>
Виділення блоків h2>
Практично
завжди сайт можна розбити на блоки. У мережі зустрічаються оригінальні сайти
дизайнерів, на яких складно знайти блоки, тому що навіть меню іноді так
заховано, що на його виявлення йде 5 хвилин. Але всі стандартні сайти, з
якими вам і доведеться мати справу, на блоки розбити можна. На рис. 1 показана
перша сторінка сайту компанії «Дизайн Артіль», яка займається
веб-розробками <. Вона наведена як приклад, тому що дуже чітко
видно окремі блоки. p>
p>
Рис.
1 Головна сторінка сайту www.artel.by, розбита на блоки p>
Я
виділив 7 блоків, на малюнку вони позначені цифрами в кружечки. Пройдімося по
всім блокам: p>
Блок
з логотипом. Іноді його ще називають блок для бренду. Логотип зазвичай
розташовується в лівому верхньому кутку. p>
Блок
з меню. Меню на сайті нестандартне, розташоване в три стовпчики. p>
Блок
новин або стрічка новин. Новини виводяться досить стандартно в один
стовпчик. Кожна новина має дату та посилання «докладніше». p>
Два
інформаційних блоку. Один з останньою роботою, а другий з рекламою системи. p>
Блок
для роздруківки інформації про компанію. Звичайна форма з чекбоксами і графічної
кнопкою. p>
Блок
підписки на новини. Поле для введення електронної адреси та графічна кнопка. p>
Блок
входу для клієнтів. Форма з полями для вводу логіна і пароля з графічною
кнопкою. p>
Дизайн
сторінки на рис. 1 будується саме на оформленні окремих блоків і на
невеликій кількості яскравих картинок. Так буває нечасто, тому зазвичай блоки
на сторінці трохи складніше ідентифікувати. p>
Ми
зараз можемо як би структуровано поглянути на верстку окремої сторінки. Можна
виділити два завдання: p>
створення
загальної структури сторінки p>
створення
окремих блоків p>
Процес
верстки в такому випадку можна розбити два етапи. На першому етапі верстальник
створює структуру (каркас). Зазвичай для цього використовуються таблиці. Після того,
як структура сторінки створена, можна приступати до верстки окремих блоків,
які заповнюють порожній каркас. p>
Я,
наприклад, перемішую два етапи. Я не відразу створюю весь каркас, а тільки
якусь його частину. Потім наявну частину каркаса я заповнюю блоками і переходжу
до створення такої елемента каркаса. Проте на самому початку я прикидаю
загальну структуру сторінки і методи її реалізації. Якщо цього не зробити, то
можна натрапити на проблему, для вирішення якої потрібно повністю
переробляти весь каркас. p>
В
як невеликого тренування давайте придумаємо каркас для сторінки, показаної
на рис. 1. Видно, що блоки 1 і 2 можна винести в окрему таблицю. Взагалі
існує загальне правило для табличної верстки: використовувати як можна більше
окремих таблиць. Якщо весь вміст сторінки помістити в одну таблицю, то
відвідувач побачить зміст тільки тоді, коли завантажиться весь вміст
таблиці. Якщо ж розбити сторінки на кілька різних таблиць, то вони
завантажуватимуться послідовник і відвідувач побачить деяку частину інформації
раніше. Так ось, блок 1 і 2 можна винести в одну таблицю, яка може
складатися з чотирьох стовпців. p>
Решта
блоки відмінно вкладаються в другу таблицю з трьох стовпців, вони просто самі
в неї просяться, так що логічно задовольнити їх бажання. У результаті у нас
вийде дві окремі таблиці, одна з яких містить блоки 1 і 2, а друга
- Всі інші блоки. P>
Як
бачите, у наведеному прикладі продумати заздалегідь каркас сторінки дуже просто.
Звичайно, подібні ситуації бувають не завжди. Іноді доводиться проводити багато
часу, вирішуючи якусь принципову проблему, що стосується структури.
Уява дизайнерів (особливо тих, які з HTML не знайомі) створює деколи такі шедеври, які перевести в HTML неймовірно складно. P>
Отже,
щоб верстати сайти, необхідно навчиться робити дві речі: створювати каркас
сторінки і окремі блоки. У більшості випадків створення каркаса завдання більш
складна, але винятки бувають і нерідко. Я вирішив все ж таки спочатку поговорити про
окремих блоках, тому що наявних знань для цього достатньо, а для
розмови про структуру сторінки - ні. p>
Так
як все ж таки ідентифікувати блоку на макеті, які радісний дизайнер з
неприхованою гордістю передав вам на верстку? Звичайно, для цього треба знати,
які взагалі види блоків бувають. Розглядом видів блоків ми зараз і
займемося. p>
Форми h2>
Форми
присутні на будь-якому корпоративному сайті. Враховуючи, що професійні
верстальники в основному роблять саме корпоративні сайти, нам не уникнути
знайомства з формами. В основному на сайті присутні такі форми: пошук, вхід
для клієнтів, підписка на розсилку, швидкий перехід по розділам за допомогою
селектора. Власне, на цих прикладах ми наочно розглянемо, які бувають
типи форм, як вони звичайно оформляються і, головне, як верстати. Почнемо з
найпростішого - форми пошуку. p>
Пошук h2>
Найпростіша
форма пошуку складається всього з двох елементів: поля введення запиту і кнопки
запуску пошуку. Найбільш звичним є розташування цих елементів на
одній горизонталі: так, як показано на мал.2. p>
p>
Рис.
2 Стандартна форма пошуку p>
Кнопка
запуску пошуку може бути як текстової, так і графічної. Звичайна текстова
кнопка реалізується ось так: p>
p>
Графічна
кнопка малюється дизайнером, потім вирізається верстальником і зберігається в
каталозі з іншими картинками. Як ви вже знаєте, каталог з картинками я
завжди називаю i. Є в мене
і стандартне назва кнопки submit,
таку кнопку я зазвичай називаю go.
За таких назвах графічна кнопка вставляється ось так: p>
p>
Стандартне
рішення при верстці блоку форми пошуку, показаного на рис. 2, зробити таблицю
з одного рядка і двох осередків. У першу комірку вставляється поле введення тексту, а
у другому - кнопка. Код буде таким: p>