From PSD to HTML (Конвертуємо шаблон * .psd в HTML дизайн сайту)

У цьому уроці автор збирається показати вам як картинку дизайну перетворити в робочий інтерфейс сайту. (Далі від першої особи)

Що вам знадобиться:

  • Adobe Photoshop.
  • PSD файл уроку Fundamentals of Interface Design. У разі якщо ви не виконали цей урок, то PSD файл ви можете завантажити будь-яку іншу картинку
  • Бідний текстовий редактор. Я люблю Notepad ++

Примітка: я не використовую dreamweaver. Хоч це чудове додаток, все ж я вважаю за краще писати код з нуля, в ручну.

Частина перша: Візуалізація CSS і HTML.

Перед тим як я починаю робити, щось я оглядаю інтерфейс. Що можу я зробити, використовуючи CSS / HTML? Що мені потрібно нарізати? Це зберігає час і дуже часто призводить до отримання чудових результатів.

Які секції ви бачите?

Ось про що я думаю, коли роблю це:

Наступне може бути досягнуто за допомогою CSS

  • Розмір інтерфейсу і його розміщення.
  • Колір тексту і посилань, їх розмір і т.д.
  • Розміщення панелей, їх розмір, рамочки і колір фону.
  • Ромчик навколо іконок.
  • Горизонтальна лінія між секціями в тілі.

Мені треба нарізати наступне

  • Іконки в шапці (включаючи іконки активної сторінки).
  • Графіку шапки, включаючи лого і напис "Part Digital Designs".
  • Фон шапки.
  • Гдляентний фон всього сайту.
  • Гдляентний фон шапок панелей.
  • footer (нижня частина сайту)
  • Один з трикутників навігації.

Частина друга: Нарізка інтерфейсу.

Я працюю, паралельно нарізаючи і складаючи CSS / HTML код. Це найшвидший метод з тих, що я випробував, працюючи над моїми проектами. Однак якщо ви працюєте в групі, то краще робити кожну процедуру окремо.

Примітка: Протягом цього уроку я буду використовувати Photoshop. Однак, для нарізки, я вам рекомендую використовувати Adobe Image Ready або Adobe Fireworks, якщо звичайно у вас є ці програми.

Ну що ж, приступимо!

Відкрийте той PSD, що я виклав на початку цього уроку.

Перший фрагмент вашої нарізки.

Натисніть K, що б вибрати Slice Tool і намалюйте виділення навколо лого і назви сайту, як показано на малюнку.

Натисніть правою кнопкою миші на фрагменті і виберіть Edit Slice Options. Назвіть цей фрагмент header_title, після чого натисніть ОК.

Запам'ятайте ці два кроки, тому що з цього моменту я буду менш детальним в своїх пояснень.

Створіть інше slice-виділення шириною 1px біля того, що ви тільки що зробили і назвіть його header_bg. У вас повинно вийти як на малюнку нижче.

Створіть віделеніе навколо іконки home (включаючи картинку будиночка) і назвіть її icon_home. Переконайтеся, що виділення має розмір 60Х54px.

Повторіть цей процес для решти іконок.

Створіть виділення біля напису на панелі home, шириною в 1px і висотою в 19px. Назвіть її panel_bg.

Створіть виділення навколо одного з трикутників і назвіть його triangle-idle. Переконайтеся що довжина і висота цього виділення дорівнює 13px.

Маленька підказка: Затисніть клавішу Shift в той час коли ви малюєте виділення і ви отримаєте правильний квадрат.

Створіть виділення навколо всього footer і назвіть його footer.

Збережіть для веб (File> Save for web or devices).

Переконайтеся що тип (type) зображення встановлений на GIF.

Переконайтеся, що налаштування збігаються з тими що на зображенні і натисніть Save.

Натисніть Save.

Добре, ми ще не нарізали все, але у нас вже досить графіки, що б почати. Поверніть photoshop і відкрийте ваш улюблений бідний текстовий редактор.

Частина третя: Закладання фундаменту.

Створіть два нових файлу і назвіть їх interface.htm і stylesheet.css відповідно

Папка з вашим проектом повинна виглядати приблизно так.

Примітка: Не забувайте про відмінність в операційних системах, у вас можуть бути зовсім інші піктограми.

Примітка: Створення веб інтерфейсу дуже не легкий процес, я не можу вдаватися в усі деталі, так як це ціла книга, але я спробую розповісти про найважливіші аспекти html і css.

Скопіюйте та вставте наступний код в файл interface.htm.


<!-- this sets the doc type -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/strict.dtd">
<head>
<title>My Interface</title>

<!-- linking your stylesheet document -->
<link rel="stylesheet" type="text/css" href = "stylesheet.css" media="screen" />

</head>
<body>

</body>
</html>

<!-- this sets the doc type -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/strict.dtd">
<head>
<title>My Interface</title>

<!-- linking your stylesheet document -->
<link rel="stylesheet" type="text/css" href = "stylesheet.css" media="screen" />

</head>
<body>

</body>
</html>
Тепер з цим html кодом всередині, прийшов час подумати про те, як буде працювати наш інтерфейс.

Перед тим як писати CSS код, подумайте про логіку, яку ви будите використовувати. Найкраще мати картинку в голові, перед тим як ви почнете, ніж починати з маленьким уявленням про те, що і як має виглядати, так як ви можете дуже легко завести себе в глухий кут.

Корисна підказка: Коли пишіть CSS, найкраще починати з каркаса і потім поступово наближатися до більш важким завданням, як в малюванні картин. Спочатку наносяться слабкі кордону, а потім все більше і більше деталізуються.

Скопіюйте та вставте цей код в ваш html документ між тегами <body> ... </ body>.

<!--
Start by blocking out the major sections of the website.
Create the site wrapper, header, body etc.
-->
<!--
Site Wrapper
Always create a site wrapper, this helps with the overall size and position of your website.
-->
<div class = "site-wrapper">

<!--
Header Wrapper
This is where the logo, site title and top navigation will go
-->
<div class = "header-wrapper">

</div>
<!--
Body Wrapper
this section is what holds the left navigation, center content and right panels
-->
<div class = "body-wrapper">

</div>

<!--
Footer
as you might expect, this is the footer
-->
<div class = "footer">

</div>
</div>
<!--
Start by blocking out the major sections of the website.
Create the site wrapper, header, body etc.
-->
<!--
Site Wrapper
Always create a site wrapper, this helps with the overall size and position of your website.
-->
<div class = "site-wrapper">

<!--
Header Wrapper
This is where the logo, site title and top navigation will go
-->
<div class = "header-wrapper">

</div>
<!--
Body Wrapper
this section is what holds the left navigation, center content and right panels
-->
<div class = "body-wrapper">

</div>

<!--
Footer
as you might expect, this is the footer
-->
<div class = "footer">

</div>
</div>
Я не можу знайти слів, що б підкреслити те, наскільки важливий перший крок. Він вносить структуру, яку інші компоненти будуть добудовувати. Чи будите ви довіряти дому з хитким фундаментом? Те ж саме правило діє і тут.

Скопіюйте та вставте наступний код в stylesheet.css


/*==============================
GLOBALS
Sets the default document font size, family
and color
===============================*/
body
{
font-family:Arial;
font-size:12px;
color:#3f4a4e;
}
/*==============================
SITE WRAPPER
===============================*/
.site-wrapper
{
width:800px;

/* min-height lets your site grow vertically
(like in tables). */
min-height:600px;

/* By setting these to auto you are centering the
site */
margin-left:auto;
margin-right:auto;

border:solid 1px black;
}
/*==============================
HEADER WRAPPER
===============================*/
.header-wrapper
{
width:800px;
height:54px;

background:url('images/header_bg.gif');

/* css lets you designate how you want an image to
repeat. Along the x-axis, y-axis or not at all. */
background-repeat:repeat-x;
}
/*==============================
BODY WRAPPER
===============================*/
.body-wrapper
{
margin-top:3px;

/* floats are crucial to the creation of any
web interface. Every web developer must master
this concept. Don't worry I'll be writing a
tutorial about this a little later. <img src="http://s7.ucoz.net/sm/19/smile.gif" border="0" align="absmiddle" alt="smile"> */
float:left;

width:800px;
min-height:530px;
}
/*==============================
FOOTER
===============================*/
.footer
{
/* clears are the sisters to float, it's
time to meet the whole family <img src="http://s7.ucoz.net/sm/19/smile.gif" border="0" align="absmiddle" alt="smile"> */
clear:left;
height:16px;
background:url(images/footer.gif);
}