Originally posted by milo@Feb 25 2007, 12:02
мне непонятно назначение сточки
Код:
#main {margin: 0px 200px;}
это значит боковые отступы по 200 пекселей от ближайших элементов?
<div align='right'>[Только зарегистрированные пользователи могут видеть ссылки. ]</div>
Немного неверное суждение.
Во-первых, не отступы, а поля. Отступами обычно называют padding-и. В принципе, конечно, это личное дело каждого – как что называть. Но лучше сразу определиться, дабы в последствии не запутаться.
Во-вторых, боковые поля по 200 пикселей не от ближайших элементов, а от границ родительского элемента (контейнера). В данном случае – от левой и правой границы блока content (блок main расположен именно в нем). Поскольку блок content имеет ширину в 100% и располагается в блоке <body>, он занимает всю ширину блока <body>. Далее: поскольку блок <body> располагается в блоке <html> и ширина блока <body> не задана явно, этот блок занимает по ширине все доступное ему пространство в блоке <html>, как и подобает, в принципе, любому блочному элементу в прямом потоке. А вот у блока <html> родителя нет... Это самый верхний элемент в иерархии. В данном случае он занимает всю ширину окна браузера.

В конечном итоге получается, что боковые поля по 200px для блока main рассчитываются от границ окна браузера.

Originally posted by milo@Feb 25 2007, 12:02
еще одна строчка
Код:
* html #main {height: 1%; margin: 0px 197px;}
зачем выставлять значение высоты в 1%? и зачем еще раз определять марджины? видимо я еще много не знаю
<div align='right'>[Только зарегистрированные пользователи могут видеть ссылки. ]</div>
Это специальный хак для "самизнаетекакогобраузера" .
В данном случае он предназначается для решения проблемы, которая называется [Только зарегистрированные пользователи могут видеть ссылки. ]. Вкратце вот в чем суть:

Если текст (прямой поток) обтекает float, например, c левой стороны, то на всем вертикальном протяжении float-а текст в прямом потоке имеет неприятный дополнительный отступ в 3 пиксела (рассматривается ситуация, когда весь блок текста имеет левый margin, не заходит под float по его завершению, а продолжается вниз одной колонкой).

Именно это и лечится при помощи * html #main {height: 1%; margin: 0px 197px;} в связке с * html #menu {margin-right: -3px;} и * html #news {margin-left: -3px;}...