Я не вижу необходимости в ваших кодах "z-index" или "position: absolute" - если только у вас нет других сложностей, которые вы нам не сообщили.
Для центрирования фона по классу DIV = "main":
body{margin:0;padding:20px 0;}
.main{background:transparent url(bg1.jpg) no-repeat center top;}
.content{border:#000 thin solid;width:960px;margin-left:auto;margin-right:auto;background-color:#000;opacity: 0.5;filter:alpha(opacity=50);-moz-opacity: 0.5;}
«Центральная вершина» помещает центральную вершину фонового изображения на центральную вершину элемента, к которому он применяется. Вы можете применить
min-width:1024px;_width:1024px;
к тому же элементу - чтобы более узкое окно не скрывало края (это изменит способ визуализации элемента, если «область просмотра» уже, чем размеры фона).
Единственное, что может сделать ваш предварительно измененный код, это не может сделать мой измененный код:
- Обрезать фоновое изображение (если оно не изначально 1024px x 768px), используя свойства css "width" и "height"
- Если элемент class = "main" уже имеет фоновое изображение, большинство браузеров не поддерживают CSS3, необходимый для размещения нескольких фонов на одном элементе
Часть из того, что было сказано о "z-indexing" и свойстве "position" выше, была правильной, но не упомянула:
вы взяли свой элемент class = "content" из потока ". Элементы-предки не будут расти при увеличении содержимого элемента class = "content". Это важное и фундаментальное различие между элементами "z-index" и элементами, которые остаются "в потоке".
Другие примечания:
- элементы с одним и тем же z-индексом складываются в соответствии с их порядком в HTML (позже HTML означает, что они нарисованы выше на экране)
- Для "z-index" требуется "position: (absolute | относительный)", "z-index: (действительное значение)" и IIRC "(верх | левый | нижний | правый): (действительное значение)" для взять элемент "из потока"