|
||||||||||||||||||||||||||
|
Складываем
кубики
|
Внимание! Все названия файлов, каталогов могут писаться только латинскими буквами, без пробелов и знаков препинания. Вы можете использовать неограниченное количество букв и цифр, разделяя их знаками "-" и "_", а также точкой. Тем не менее, я не рекомендую использовать более 10-15 знаков в названии, потому что общий объем ссылки может превысить некий нелогичный предел, после которого часть браузеров начинает "глючить". |
Файл титульной страницы должен называться index.html (или index.htm, shtml, dhtml и т.д.), т.к., именно файл с таким названием будет загружаться на компьютер пользователя при наборе в адресной строке адреса вашего сайта (вы же набираете, фактически, адрес директории, а не конкретный файл с путем). В очень редких случаях хостинг-провайдер может настраивать свой сервер на выдачу по умолчанию файла default.html, но это бывает так редко, что не стоит серьезного рассмотрения.
Некоторые трудности может вызывать гиперссылка, если файлы, между которыми нужно ее поставить, находятся в разных директориях. В этом случае нужно указать либо относительный путь по дереву каталогов к файлу, на который вы ссылаетесь или абсолютный путь (url). Первый вариант обычно предпочтительнее.
Например, вы хотите поставить ссылку между
файлами
work/site/about/owner.shtml
и work/site/advertising/job.shtml
относительная ссылка будет ../advertising/job.shtml, то есть, мы сначала
выходим из директории about, потом входим в директорию advertising,
где лежит нужный нам файл. Если же путь получается очень длинный с большим
количеством переходов, то, может быть, проще поставить абсолютную ссылку
или ссылку от корня сайта (той директории, где лежит файл индекса),
в последнем случае, перед первым каталогом ставиться прямой слеш:
/advertising/job.shtml (в данном случае предполагается, что каталог
advertising является поддиректорией корневой директории сайта).
Прежде чем приступать непосредственно к верстке конкретных страниц, заготовьте шаблон в соответствии с вашим макетом и сохраните его отдельно. Теперь, вместо того, чтобы писать коды каждой страницы заново, вы можете просто открыть шаблон и, сохранив его новым файлом, внести изменения, и вот - страница готова. Большинство продвинутых редакторов (как текстовых, так и визуальных) позволяют сохранять шаблоны именно как шаблоны, то есть, при создании нового файла будет выбираться заданный шаблон, а не просто пустая страничка. Более того, вы можете сохранить и несколько шаблонов, используя их по мере необходимости. Хорошо продуманный и грамотно созданный шаблон позволит вам, впоследствии, создавать страницы буквально за несколько секунд.
Кроме собственно языка HTML существует еще большое количество дополнений, которые призваны облегчить жизнь веб-мастеру и немного навести порядок на сайте. Есть среди них полезные, есть и вредные, но есть два дополнения, которые нужно использовать обязательно, даже если сейчас вы не видите, как они могут вам пригодится. Эти два дополнения - SSI (Server Side Inclusions) и CSS (Cascade Stile Sheets), оба они довольно простые, хоть и обладают совсем недетскими возможностями.
С помощью SSI вы можете включать в свою страницу любые необходимые вам фрагменты (тексты, картинки, счетчики, результаты работы программы и пр.) непосредственно на сервере. Это дает вам возможность загружать в заданное место страницы повторяющиеся элементы по всему сайту из одного источника. Хороший пример - оглавление - оно обычно повторяется на всех страницах узла и всегда одинаковое. Поставив директиву SSI, вы сможете хранить оглавление в отдельном текстовом (или HTML) файле, который сервер будет вставлять на каждой странице в указанное вами место. Такой файл гораздо легче исправить, если возникает такая необходимость. Представьте, что у вас 200 файлов, в каждом надо исправить оглавление и положить на сервер, а тут - поменял текст в одном файле и положил на сервер за несколько секунд. Кроме того, при большом объеме сайта можно значительно выиграть в дисковом пространстве, которое вам потребуется, оно, конечно, сейчас почти ничего не стоит, но вам, например, потребуется меньше времени на "заливку" файлов на сервер.
Как это делается? Существует ряд базовых
директив (исполняемых команд) SSI, которые вы специальным образом включаете
в свои страницы, а при запросе страницы компьютером пользователя, сервер
сканирует ее на наличие директив и, если находит, то подставляет вместо
них требуемые значения. Для того, чтобы сервер сканировал документ необходимо
ему дать на то указание. Некоторые сервера сканируют все документы без
разбора, другие - только те файлы, которые имеют расширение SHTML, причем,
последних - большинство. Что именно будет сканировать сервер, зависит
от его настроек, поэтому если у вас есть доступ к серверному ПО, то
вы можете сделать так, как пожелаете, но если вы планируете арендовать
хостинг, то рассчитывайте, что сканироваться будут только SHTML файлы.
SSI - это очень мощный инструмент, который способен реально помочь вам в работе над проектом, поэтому нужно сразу ориентироваться на его использование. Следовательно, даже если вы не собираетесь использовать возможности SSI прямо сейчас, все равно имеет смысл дать всем страничным файлам расширение SHTML, а не HTML, чтобы потом не пришлось переправлять все ссылки. Файлы переобозвать, понятно, просто, но ссылки на них стоят на других страницах, а может быть, и на других серверах, - пойди найди их все и исправь. Поэтому лучше сразу использовать SSI, тем более, что это очень просто. |
Директивы SSI вставляются в файл в виде служебного тега "комментарии"
<!--#Здесь должна быть команда с параметрами--> такой тег (только без знака диез #) не отображается на страницы и служит для помещения в коде служебных записей, например, чтобы вы лучше ориентировались в тексте или, если над проектом работает много людей. В случае, если ваша директива не может быть выполнена, она просто не отобразиться (если настройки сервера это позволяют).
Две самые распространенные директивы SSI, которые вы можете начать использовать прямо сейчас это exec и include. Первая из них запускает внешнюю программу (обычно CGI-скрипт), вставляя на страницу результаты работы этой программы, а вторая - подставляет данные из файла и тоже может вставлять результаты работы сторонней программы. Возьмем, например, все то же оглавление и посмотрим, как будет выглядеть оно на странице при подстановке с помощью директивы SSI. Пусть у нас есть таблица в виде оконной рамы, где сверху - шапка страницы, слева текстовый блок с основным содержанием, а справа - оглавление. В этом случае код страницы, спроектированный обычным образом, будет выглядеть следующим образом (обрезанно):
<table ...>
(тег таблицы с параметрами - шириной, толщиной
линий, фоном и пр.)
<tr><td> (открываем
строку, потом ячейку)
Основной текст страницы
</td> (закрываем
ячейку)
<td> (открываем
ячейку)
Оглавление
</td> (закрываем
ячейку)
</tr> (закрываем
строку)
</Table> (закрываем
таблицу)
Теперь, если оглавление у нас везде одинаковое, мы можем подставить его с помощью директивы SSI, а само оглавление поместим в файл ogl.txt, который будет вставляться в файл непосредственно перед его открытием на компьютере пользователя. В этом случае страница будет выглядеть следующим образом:
<table ...>
(тег таблицы с параметрами - шириной, толщиной
линий, фоном и пр.)
<tr><td> (открываем
строку, потом ячейку)
Основной текст страницы
</td> (закрываем
ячейку)
<td> (открываем
ячейку)
<!--#include virtual = "ogl.txt"-->
</td> (закрываем ячейку)
</tr> (закрываем
строку)
</Table> (закрываем
таблицу)
И к этому будет прилагаться файл ogl.txt, хранящийся в той же директории, что и файл рассмотренной нами только что странички. Если же файл будет храниться в отдельной директории, то надо указывать относительный путь, как и при обычной гиперссылке - это мы уже разбирали выше. Посмотрим на получившийся результат: казалось бы ничего не изменилось, только поменялась одна строка, но теперь у нас оглавление в отдельном файле и, если нам придется добавить в него одну строку, то нужно будет поменять только один файл. Кроме того, сам файл стал короче, ведь оглавление - это не одна строка, а мы заменили все одной строкой, убрав нагромождения тегов в отдельный файл - с получившимся файлом будет гораздо легче работать.
Однако теперь мы можем несколько сократить получившийся код, так, чтобы в шаблоне у нас было еще меньше мусора. Для этого мы уберем все окружающие оглавление теги в тот же самый подгружаемый файл (мы можем подгружать все, что угодно, а браузер уже получит страницу для отображения полностью собранной, так что можно разрывать таблицы, открывающие и закрывающие теги и пр.). Вот, что у нас получиться:
<table ...>
(тег таблицы с параметрами - шириной, толщиной
линий, фоном и пр.)
<tr><td> (открываем
строку, потом ячейку)
Основной текст страницы
<!--#include virtual = "ogl.txt"-->
Здорово, не правда ли?! А в файле ogl.txt у нас теперь храниться много всякой ерунды:
</td>
(закрываем ячейку)
<td> (открываем
ячейку)
Оглавление
</td> (закрываем
ячейку)
</tr> (закрываем
строку)
</Table> (закрываем
таблицу)
Причем, обратите внимание, что и тег, закрывающий таблицу, тоже здесь. В итоге, у нас есть один файл шаблона, в который осталось только поместить основной текст и отформатировать его (расставить абзацы, выключки, ссылки и пр.), объем кода на странице сократился заметно. Такой файл будет сделан для каждой страницы, а также один файл ogl.txt, который содержит единое для всех оглавление и некоторое количество служебных тегов.
Второе важное дополнение - это каскадные таблицы стилей - CSS. Они позволяют определять и переопределять стили оформления текста, а также других элементов на странице. На самом деле, возможности CSS очень велики: используя эту систему вы можете задать оформление всего сайта, описав его параметры в одном единственном файле, а потом несколькими движениями мыши переделать все оформление, просто поставив другие параметры в файле-описании. Более того, существуют системы на основе CSS, позволяющие то же самое проделывать не только издателю, но и посетителям. Это немножко похоже на фокус. Если вы когда-нибудь игрались с Desktop Themes (штука такая в Control panel, меняющая оформление win) или загружали себе на компьютер шкурки (skins), то здесь нечто похожее: поменял один файл-описание на другой, и на тебе: совершенно другой сайт.
CSS оформляются в виде описаний: {название стиля = его значение} и точно также обрамляются знаками примечания, как и SSI инструкции, чтобы браузеры не сочли их отображаемыми данными. Описания могут, теоретически, находиться в любом месте страницы, но предпочтительно их размещать все вместе в заголовке станицы между тегами <head></head>. В отличие от SSI, CSS - это инструкции для браузера, а не для сервера, причем, далеко не все браузеры в состоянии грамотно отобразить их, а, следовательно, не стоит удивляться тому, что не все пользователи смогут увидеть все красоты вашего сайта. Самая распространенная схема использования CSS - это переопределение стандартного ряда стилей H1-H6 и одновременное создание нескольких дополнительных стилей с собственными названиями. В результате, вы используете при верстке страниц стандартные стили, которые при открывании страницы пользователем выглядят в соответствии с заданными вами директивами. Если же браузер пользователя не в состоянии грамотно интерпретировать CSS инструкции, то человек увидит просто стандартные стили. Таким образом, сайт пострадает не катастрофично и все равно будет вполне читаемым, конечно, если вы использовали стили по назначению: H1 - самый крупный заголовок, H2 - немного помельче и т.д.
При желании, если вы определяете большое количество стилей, вы можете снести все записи в отдельный файл (обычно default.css), который браузер будет автоматически забирать при заходе на сайт. Это, кстати, реально увеличивает скорость загрузки, при длительном нахождении на сайте, поскольку файл описания стилей загружается один раз и только в самом начале сессии, а вот подставляется оно во все страницы, следовательно, при указывании стилей в заголовке каждой страницы, вы каждый раз увеличиваете объем файла на лишний 1-2 килобайта. В случае, если вы используете отдельный файл стилей, он вызывается строкой в заголовке страницы <link rel="STYLESHEET" type="text/css" href="../css.css">, причем, если ваш файл стилей называется default.css, то IE 5 автоматически "выцепит" его и подставит ко всем вашим страницам на любую глубину от корня, где был найден файл стилей.
Ну вот, теперь вы можете менять стилистику всего файла, редактируя один текстовый файл. Кроме того, вы автоматически применяете один и тот же стиль оформления по всему сайту, пользуясь при этом привычными тегами. Использование CSS тем более желательно, что при оформлении заранее заданными тегами гораздо сложнее ошибиться и поставить кегль, например, на единицу меньше. Таким образом, используя CSS, вы можете не задумываться, какой именно тег здесь поставить, поскольку все шрифты и размеры у вас уже определены в таблице стилей и расписаны в макете!
Вышеупомянутые мною системы SSI и CSS крайне желательны к применению на сайте. Даже если они сейчас вам не нужны, то при разрастании узла вы, со временем, придете к положению, когда они понадобятся, и тогда придется переделывать несколько десятков или сотен страниц. Очень удобно, в частности, то, что эти системы позволяют вам не держать в голове все страницы, поскольку все их ключевые элементы определяются либо таблицей стилей, либо подгружаются по заданному шаблону.
Существуют и другие технологии, которые могут помочь веб-мастеру, а также разнообразят и украсят любой узел. О некоторых из них вы узнаете в следующих лекциях, а об остальных из книжек с "Книжной полки".
Опрос |
|
Конкурсы
|
|
Реклама |
|
Web дизайн: Бурлаков Михаил
Web программирование: Бурлаков Михаил