пятница, 1 февраля 2008 г.

Шаг 3. Начинаем Писать Код

www.websovet.com
Некоторые ортодоксы от веб-строительства возможно уже копят какашки, чтобы закидать меня ими, ибо прежде чем писать код, нужно вначале создать макет сайта в том же Фотошопе. Моя имха на сей счет такова: Если вы намереваетесь создать нечто Словами Невыразимое И Пуще Блеска Солнца Афигенно-Креативное, то да, рисуйте прежде это Невыразимое в виде общей картины, а потом кромсайте на кусочки. Но мы на такое дело не замахиваемся. Простой сайт можно и даже нужно творить по-ходу.

Есть уже целая масса отработанных до мелочей шаблонных подходов. Это и верстка в две, три колонки, "контейнерная" или "резиновая", и менюшка, выполненная либо по горизонтали, либо по вертикали. Ничего сверх естественного нет. А потому собирать сайт можно как конструктор: нашел интересную делать — пристроил на место, поглядел, не понравилось — прицепил другое.

Не нужно быть семи пядей во лбе, чтобы удерживать визуально общую картину. Если что-то где-то вылезло или недостает, то всегда можно оперативно поправить. И блочная верстка как раз весьма этому способствует. Поэтому я никогда не рисую предварительный макет. Ну, мож на листке бумаги разве, да и то на стадии обдумывания Идеи и будущих разделов сайта. Зачастую я наоборот отталкиваюсь от разметки и уже под нее рисую картинки с заведомо заданными размерами.

Та-да-а-ам!.... А теперь запускаем наш PSPad и создаем в нем новый документ. В выпавшем списке выбираем тип документа HTML и получаем уже готовый кусочек кода:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1250">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title></title>
</head>
<body>
</body>
</html>

Давайте его разберем. Самая первая строка с DOCTYPE — очень важная штука. Как и любая азбука, HTML имеет свои правила. Для чего это нужно? Как я уже и упоминал ранее, различные браузеры по разному отображают разметку страниц. Вот чтобы этого бардака было как можно меньше и были придуманы некие стандарты. Есть построже, есть полиберальнее. В нашем случае как раз второй вариант.

Далее идет тэг html. Что такое тэг? Проще говоря, это элемент языка. Как, например, в случае с азбукой таким элементов будет буква. Другими словами, тэг — это буква языка HTML. Усвоилось? Ну, тогда поехали дальше.

Тэг html означает веб-страницу вообще. То есть, он говорит браузеру: "Щас, приятель, пойдет обычная html-страница, так что ты не выпендривайся и показывай ее как надо!" Если посмотрите в конец представленного кода, то увидите второй такой же тэг, но с косой чертой перед ним. Это так называемый "закрывающий" тэг, а косая черта (слэш) — явно это показывает. Большинство тэгов имеют такие вот закрывающие пары, и далее расскажу для чего это надо.

Следующий тэг head — "голова". Вообще любая html-страница разбита на две функциональные части: голова (head) и тушка (body). В голове в основном пишется то, что на самой странице не видно. То есть всякая служебная информация для браузера. Чтобы он знал, подлец, какой мы желаем использовать язык, как называется наша страница, описание для нее, ключевые слова и пр. Например, сейчас у нас там как раз обозначены некие мета-тэги (meta). Первый из них показывает выбранный нами язык страницы — windows-1250 (кстати, исправьте сразу на 1251, чтобы не получились кракозябры), а второй есть рекламная хитрость хозяев нашего замечательного редактора кода PSPad, и его мы нафик удалим вообще. :) В результате у нас должно получиться вот так:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<title></title>
</head>
<body>
</body>
</html>

Тэги <title></title> не менее, а то и более важная часть, чем даже DOCTYPE. Это заголовок страницы. Не тот, что мы видем в тексте на экране, а тот, что высвечивается на самой верхушке браузера. Вот как, например, данный блог у вас обзывается там "Делаем Свой Первый Сайт - (тут имя браузера, которым вы смотрите данную страницу)". Заголовки такого рода очень важны для поисковых машин типо Яндекса или Гугля. Именно они будут в поисковой выдаче. Так что советую обратить на это дело особое внимание.

Другое дело тушка (body). Это уже как раз то, что мы предъявляем посетителям. Именно тут мы станем складывать текст в абзацы, добавлять к ним картинки, ссылки всякоразные и т.д. Соответственно, все это добро будет у нас расположено между тэгами <body> - </body>.

Обратите внимание: у нас "голова" и "тушка" вложены в общий тэг html. Причем они не пересекаются. То есть нельзя сделать вот такую запись:

<html>
<head>
<body>
</head>
</body>
</html>

Это будет ашипкой! Тэги head и body должны(!) поочередно открываться и закрываться. Другое дело, если мы хотим вложить один тэг в другой. Как, например, у нас вложены и head и body в общий тэг html. Иначе говоря, соблюдайте принцип матрешки. Ибо нельзя приторкать бюст самой мелкой на торс самой крупной.

А теперь давайте-ка сохраним это дело в виде Самаглавной страницы сайта, а именно под названием index.html. Почему index.html? Дело в том, что когда вы в своем браузере набираете нечто вроде: www.shtirlets.com, то он (браузер) моментально кинется искать на удаленном сервере именно эту страницу, потому как по-умолчанию они все это делают.

Рекомендую сразу для нашего сайта завести папку, куда и будем складывать страницы, картинки к ним и еще кой чего. Но об кой-чем в следующий раз.

Шаг 2. Выбираем Метод

Ну что, таки начнем? ;)

Так как наш будущий сайт станет вроде тренировочной площадки для отработки навыков сайтостроения, то я взял первую попавшуюся Идею за хвост, благо она пролетала мимо и чего-то зазевалась. Мы создадим сайт об инопланеччиге Ё! ибо это первое что он произнес, рухнув на мой сарайчег.

В качестве разделов сайта возьмем следующие пункты: Главная, Наблюдения, Испытания, ТехПомощь, Ссылки, Контакты. То есть практически то, что и бывает на обычном таком небольшом сайте. Разделы: Главная, Ссылки и Контакты — это классика жанра и встречаются почти на каждом сайте. А вот Наблюдения, Испытания, ТехПомощь — это и есть так называемая "соль", основное содержимое площадки. В этих трех будут свои собственные подразделы. Общая структура сайта будет выглядеть следующим образом:
www.dizweb.ru
То есть получаем в результате три уровня вложенности: чтобы добраться с Главной страницы до любой из Тем (оранжевые кружки с номерами), нужно сделать 2 клика мышкой. Почему именно так, а не иначе? Причин масса. Основная — упрощение действий серфера. Чем быстрее и леххче он доберется до нужной страницы, тем ему будет приятнее и, возможно, он к нам еще раз потом заглянет, а мож и друзей притащит. ;)

Со схемой определились. Теперь поговорим немного о способе постройки сайта. До недавнего времени большинство сайтов строилось на основе таблицы. То есть рисовалась эдакая громадная "сетка", в которой как яйца в магазинной картонке раскладывались картинки, кусочки текста, другие таблички, кнопки и пр. Нынче это уже анахронизм (грубо говоря — ацтой) и современные сайты верстаются из блоков. Спорить о преимуществах и недостатках той или иной системы мы не станем.

Просто для наглядности, представьте: табличная сетка — это как скелет. У каждой самой мелкой ячейки есть свои стеночки, у стеночек определенная толщина и цвет. И вот каждый этот нюанс надо как-то закодировать, чтобы браузер мог правильно прочитать и нарисовать соответствующую ячейку. То есть, помимо основного содержимого, картинки например, ему надо изобразить и саму ячейку, а это уже куча избыточного кода. В результате код нашей страницы становится слишком громоздким. Кому интересно, можете найти в сети и посмотреть код подобных сайтов (их еще достаточно много). Сплошные <tr><td></td></tr>...

Блочная же верстка позволяет обойтись без жесткой конструкции табличной сетки. Принцип тут простой: каждый элемент страницы, будь то картинка, кусок текста (абзац), табличка, список и пр. называется блоком. Блоки, как кирпичики, располагаются на странице в режиме "естественного потока". Это как будто вы пишете письмо, и как только строка кончается, то переходите на следующую. Монитор — это тоже своеобразная "страница". Содержимое сайта на мониторе так же "раскладывается" слева направо и сверху вниз по-порядку.

У блоков есть одна интересная особенность: каждый из них считает, что недостойно находиться на одной горизонтали (читай — строке) с другим блоком. Поэтому по-умолчанию блоки всегда располагаются один под другим. Это умолчание можно подкорректировать и расположить несколько блоков на одной линии. Но об этом чуток попозже.

То есть, мы не делим пространство веб-страницы на ячейки как в табличной верстке, а словно бы складываем в коробочку все элементы. В этой самой "коробочке" они плотно укладываются один к другому. В результате мы избавляемся от скелета, а стало быть, и от массы ненужного кода. Для сравнения: когда я сверстал свою самую первую веб-страницу используя таблицы, а потом переделал в блочный вариант, то вес кода уменьшился ровно в 4 раза. Да и разбираться в нем стало намного проще.

Итак, с методом определились. В следующий раз станем писать непосредственно код. Мужайтесь! (хм... девушкам не знаю как сказать, готовьте нашатырь, наверное).

среда, 30 января 2008 г.

Запасаемся Инструментами


Окей! Будем считать, что с Идеей мы разобрались. Самое время озаботиться инструментарием для нашего предприятия. Кто не в танке, напомню: мы строим свой самый первый сайт. Самостоятельно!

Методология любой школы требует начинать изучение предмета с азов, сиречь азбуки. И это правильно. Ибо можно накарябать на заборе матерное слово, похожее на соседнее, а потом с ужасом узнать от товарищей постарше, что ты сделал в нем кучу пазорных ашипок. Смею предположить, что заниматься азами очень многим человекам откровенно лень (вот тут по закону жанра должно было бы прозвучать патетическое: "А надо!", но таки не прозвучит).

Казалось бы, чего сложного — установи какой-нить визуальный редактор для ваяния сайтов, благо их сейчас масса, и вуаля! Ниччо втыкаться не надо, знай лепи себе как из конструктора кусками что-то похожее на веб-страницу, а программа сама все доделает как надо. Но каким бы редактором вы не пользовались, всегда наступает такой момент, когда прога начинает откровенно глючить и выдавать не совсем то, чего хочется. В результате на выходе получаем перегруженный излишним кодом блин, который вроде бы и не ком, но и не ватрушка сдобная. Фигня, одним словом.

Поэтому я ратую за чистый код и за то, чтобы таки писать его вручную. На самом деле не так уж он и сложен, как выглядит вначале. Поверьте на слово, со временем вам самим будет гораздо проще и быстрее забраться в код и поправить что-то в нужном месте, нежели запускать визуальный редактор вроде Дримвьювера (а то и ФронтПейджа, да не к ночи буде помянут) и пытаться его побороть.

Итак, шаг 1 — Инструмент!

Заходим вот на этот симпатичный сайт — www.pspad.com — и скачиваем замечательнейший редактор текста и программного кода PSPad. Замечателен он многим, но самое главное — им очень удобно работать. Попользуетесь и поймете все сами.

Далее, нам понадобится Фотошоп. Не Корел, не ПайнтШопПро и иже с ними, а обычный такой фотошопчег версии 7-8. Выше не рекомендую, ибо лицензионную вы вряд ли станете пользовать :) а "рыночный" вариант хорош до 8-го номера (по-другому обзывается CS). Все что выше, 9 и 10 — куча глюков и ничего более. Я пользуюсь "восьмеркой" и тихо радуюсь. Важно(!): ставьте ТОЛЬКО английскую версию. По ходу езыг хоть немного вспомните. Пригодится.

Еще нам конечно же понадобятся средства для отображения наших неимоверных усилий в сайто-строительстве, а именно браузеры. Я не зря сказал это во множественном числе, ибо сие есть горькая (пока еще) правда. Горькая потому, что каждый браузер считает себя круче других и некоторые куски кода показывает исключительно по-своему. Тогда как сосед его, презрительно морщась, выруливает в другую степь. Отчего наш красивый во всех отношениях сайт у одного браузера вылезает чуть вбок, у другого раздается чуть вширь, а у третьего вообще шапка взаместо валенок и наоборот.

Поэтому нам понадобятся как минимум три самых распространенных на данный момент браузера: Interner Explorer, Opera и FireFox. Устанавливаем всех троих (IE стоит по умолчанию у всех пользователей Виндовза).

Вот теперь мы вооружились всем необходимым. Для создания полноценного сайта этого вполне достаточно. Все остальное — суета и томленье Духа.

В следующий раз начнем сразу же верстать страницу. А по ходу станем запоминать всяческие полезные штуковины и сам код конечно же. Кто не осознал важности сего момента — живо перечитать предыдущее предложение. Мы будем учить код в процессе! А это всяко интереснее, чем зубрить азбуку всухомятку.

вторник, 29 января 2008 г.

Начинаем Плясать От Печки

www.websovet.comКто не в танке, поясняю: сие выражение пойти-пошло от древних строителей домов, которые всегда начинали рисовать план дома, ориентируясь в каком месте будет установлена печь.
Печь — устройство для отапливания различных строений (дом, баня, пр.) или для получения необходимой в том или ином технологическом процессе (выпечка хлеба, обжиг керамики, термообработка металлов, лабораторные исследования) высокой температуры.

Наиболее известные в России печи:
Русская печь
Буржуйка
Плита, дровяная, угольная, на жидком топливе и современные газовые плиты и электрические плиты.
(взято из Википедии)

Эдакое вот лирическое отступление дано не зря. Ибо строим мы тоже что-то вроде дома, только виртуального. В нашем случае печкой станет общая Идея сайта, которая в дальнейшем будет греть самолюбие мастера и подталкивать на новые подвиги.

Итак, Идея. Понятно дело, что сайт создается не от балды. Никто не строит дом просто так, чтоб был. Придумать Идею иной раз достаточно сложно. Особенно если попытаться найти что-то необычное, чего еще не было. Уж поверьте на слово — в сети НЕТ ничего такого, что еще не было бы описано сотню другую тыщ раз.

Вопрос не в том, чтобы найти нечто необычное, а в том, чтобы интересно рассказать об известном. Интересно, либо нестандартно. Например, в сети туча сайтов о мобильниках и иже с ними. Но вот пока мне ни разу не попался сайт, на котором рассказывали бы о забивании мобильниками гвоздей. Глупость, конечно, но тоже фишка. Мало ли кто как с ума сходит в мире!

Но это если все-таки есть сильное желание удивить. А проще всего найти тему в своем ближайшем окружении. Занимаешься фотками? Очень хорошо! Сделай из них небольшой фоторассказец. Любишь тискать домашнюю зверушку? Сделай для него сайт. Не просто жалкую кучку фоток с подписями, а полноценный рассказ о жизни, буднях и праздниках зверя. А еще лучше от имени самого любимца, то есть как бы это могло выглядеть по его мнению.

Или тебе жутко нравятся трейсеры. Ты само — тучное жывотное и никогда не то, чтобы на крышу взобраться, а и лишний раз на улицу фик выползешь. Напиши об этом в своем сайте. Каждый день фиксируй свою лень. И может быть когда-нибудь ты все же оторвешь зад от дивана и сходишь на стадион. Ну... посмареть канешна, как там ваще та... А далее... Как знать! Времена меняются, меняемся и мы вместе с ними. ;)

То есть смысл послания кристально ясен. Придумывать велосипед не надо. Достаточно оглядеться внимательно вокруг и стрельнуть глазом на все это под непривычным углом. Вот она — Идея!

В следующий раз поговорим за Инструмент.

Винтеги И Шпунтеги Интернета

www.dizweb.ruПричин, почему отдельно взятый прохожий вдруг ни с того ни с сего решает стать веб-строителем, может быть превеликое множество. Рассуждать на эту тему столь же бессмысленно, как и спорить о вкусах. Другое дело, что сразу возникает закономерный вопрос: "С чего же, чорт побери, нАчать?" Возникает он, естественно, не на пустом месте. Подразумевается, что неофит уже хотя бы сам умеет пользоваться браузером и отличает Яндекс от "хомяка".

Если задать сей нехитрый вопрос в поиске, то среди массы комерческих предложений таки сделать вам сайт "командой профессионалов" попадаются и вовсе перлы типо: "Купите мою супер-книгу 10 шагов к созданию своего мега-кул-портала!!!", или такая же бодяга бесплатно, но с кучей рекламы внутри. Причем зачастую эти "супер" сами по себе выглядят полным отстоем, да плюс еще и на халявном хостинге.

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

Если вам нужен просто "хомяк" чтобы похвастать друзьям-знакомым, то не стоит и заморачиваться. Для этого есть масса готовых решений. Тот же сайт на Народе или Укозе. Этого будет вполне достаточно. Сей блог для человеков ищущих, кому интересно своими шаловливыми ручками все пошшупать и сделать, и чтоб выглядело не кусочком Г. а вполне пристойно.