• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Как привязать слои к Bg?

  • Автор темы Altmer
  • Дата начала
Статус
Закрыто для дальнейших ответов.
A

Altmer

Товарищи помогите !!!

Трабл в следующем:
стартовая страница сайта написана с использованием слоёв(layer)
(рад бы написать таблицами, но не, низя).
В оконном режиме всё ОК, но стоит развернуть окно на весь экран, как слои начинают ехать!
И всё смотрится крайне позорно...
Т.к. бэкграунд в оконном режиме занимает весь экран, то в развёрнутом встаёт по центру,
а слои намертво привязаны к левому и вершнему краю экрана,
соответственно бг едет в центр слои стоят на месте... :p
Слышал про два решения:
1. Существует волшебный java-script к-й это дело правит, но я его так и не нашёл...
2. position:absolute означает, что позиционирование слоя будет происходить относительно левого верхнего угла страницы.
position:static означает, что позиционирование слоя будет происходить относительно фона.
Я посчитал, что бг вполне сойдёт за фон,
но апшибся при указании position:static вместо position:absolute страница
ведёт себя так, как если бы я вообще ничего не указывал в свойствах слоя... :)

НАРОД ВЫРУЧАЙТЕ!!!
 
A

Andrew Stephanoff

какие еще слои?? это какой-то анахронизм
скорее всего верстка на div'ах
Давай свой код, посмотрим что там
 
A

Altmer

какие еще слои?? это какой-то анахронизм
скорее всего верстка на div'ах
Давай свой код, посмотрим что там



------------------------------------

#Layer1 {
position:absolute;
left:614px;
top:109px;
width:88px;
height:52px;
z-index:1;
}

------------------------------------

<div id="Layer1">
<a href="CCinit.php?id=detskoe" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage ('Image1','','start_img/jpg_detskoe_sv.jpg',1)">
<img src="start_img/jpg_detskoe.jpg" name="Image1" width="141" height="74" border="0" id="Image1" />
</a>
</div>

------------------------------------
 
A

Altmer

А у меня все работает....

:) да, всё работает...
но на больших разрешениях бг уходит в левый верхний угол,
а если его центрировать, то будет то о чём я писал выше...
(сразу не додумался написать написать, сорри)
 
I

ioni

Теоретически (потому что я на 1400х900 смотрю и у меня все окей) - я бы
(1) подложку разместил на отдельном слое и поместил бы его в самый них через Z-index, если уж так нужно.

или, если я не ошибаюсь, подложка у теяб указана в самой таблице?
Тогда попробуй ее указать в стиле top_table_1, а не в самой структуре HTML
 
A

Altmer

Теоретически (потому что я на 1400х900 смотрю и у меня все окей) - я бы
(1) подложку разместил на отдельном слое и поместил бы его в самый них через Z-index, если уж так нужно.

Идея классная, НО я не понял как это всё будет двигаться
при смене разрешения?

или, если я не ошибаюсь, подложка у теяб указана в самой таблице?
Тогда попробуй ее указать в стиле top_table_1, а не в самой структуре HTML
Тоже... не понял что при этом изменится :)
 
I

ioni

Я правильно понимаю, что под сменой разрешения мы понимаем на самом деле изменение размера окна? Типа, раскрыть/развернуть? Потому что представить ситуацию, в которой мне бы пришлось учитывать то, что пользователь зайдет с одним разрешением экрана на сайт, а потом изменил его, а потом еще раз, а потом поменяет глубину цвета и так далее – это умножение сущностей…

Так вот, я бы попробовал создать div, который будет включать в себя все остальные слои – и именно так, как надо, а подложка у него будет привязана к верхнему левому углу. Потом мы его засунул в таблицу 100% на 100%, с выравниванием по центру по горизонтали и вертикали. Мне кажется. это бы в значительной степени облегчило задачу…

Типа,
Код:
<css>
#Main {
width:600px;
height:589px;
background-image: url(images/bg_start_big_2.jpg);
background-repeat: no-repeat;
}
помещаешь его в
Код:
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" valign="middle">
<div id="Main">
XXXXXXXXXXXXX
</div>
</td>
</tr>
</table>
где XXXXXXXXXXXXX - это список твоих слоев, расчитанных, как relative от верхнего левого угла div Main.
Мне кажется это будет ,eltn оптимальным решением
 
A

Altmer

:) Ура-а-а!!!

Спасибо тебе о ioni!!!

Совет оказался очень дельным!
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!