TIPS OF WEB - заморочки с css

Vadias

Спецвыпуск Xakep, номер #025, стр. 025-106-1


(painter@gameland.ru, www.freehand.str.ru)

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

TIPSa 1

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

TIPSa 2

Как создать простейший CSS-блок нужной нам ширины? Для этого сначала придется написать код его свойств и вставить в страницу либо в файл со стилями (это тот, который оканчивается на .css):

<STYLE TYPE="text/css">

#css-block {

width: 40px;

</STYLE>

Заметь, перед именем "css-block" стоит значок "#" - это значок ID. По правилам это значит, что блок такого типа будет единственным на странице. Если же ты хочешь усыпать все поле юзерского браузера такими блоками, правильнее будет поставить не "#", а точку, вот так: .css-block. В таком случае это будет класс.

Теперь в любое место страницы вставляем непосредственно блок. Делается это тегами <DIV>:

<DIV ID="css-block">

Этот драный блок имеет ширину 40 пикселей

</DIV>

TIPSa 3

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

<STYLE TYPE="text/css">

#left {

width: 25%;

position: absolute }

#center {

width: 50%;

position: absolute;

left: 25% }

#right {

width: 25%;

position: absolute;

left: 75% }

</STYLE>

<div id="left">

Навигация

</div>

<div id="center">

Новости

</div>

<div id="right">

Реклама и мелочь

</div>

Здесь мы абсолютно позиционируем наши элементы, поэтому в блоках "center" и "right" делаем отступ слева 25 и 75 процентов соответственно.

TIPSa 4

Наружные поля (margins) в нашем случае не обязательны, но ты можешь иметь в виду, что следующий стиль:

#xak {

margin: 10px}

создаст вокруг блока "xak" поля шириной в 10 пикселей.

В обычных случаях все содержимое страницы имеет некоторый отступ от края браузера (сверху и слева). Однако это предусмотрено в основном только для текста. Чтобы убрать эти отступы, надо подредактировать тег <body>:

<body leftmargin="0" topmargin="0">.

TIPSa 5

Чтобы текст одного блока не прилипал к тексту другого, следует выставить все необходимые отступы. Сделаем внутренние отступы, скажем, в 5 пикселей (имей в виду, тогда расстояние содержимого соседних колонок составит 5+5=10 пикселей). Это делается так:

Содержание  Вперед на стр. 025-106-2