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

Тема в разделе "HTML, CSS, XML, JavaScript", создана пользователем Altmer, 27 окт 2006.

Статус темы:
Закрыта.
  1. Altmer

    Altmer Гость

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

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

    НАРОД ВЫРУЧАЙТЕ!!!
     
  2. Andrew Stephanoff

    Andrew Stephanoff Гость

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

    Altmer Гость

    http://softdream.nnov.ru

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

    #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>

    ------------------------------------
     
  4. ioni

    ioni Well-Known Member

    Регистрация:
    11 май 2006
    Сообщения:
    351
    Симпатии:
    0
    А у меня все работает....
     
  5. Altmer

    Altmer Гость

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

    ioni Well-Known Member

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

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

    Altmer Гость

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

    Тоже... не понял что при этом изменится :)
     
  8. ioni

    ioni Well-Known Member

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

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

    Типа,
    Код (Text):
    <css>
    #Main {
    width:600px;
    height:589px;
    background-image: url(images/bg_start_big_2.jpg);
    background-repeat: no-repeat;
    }
    помещаешь его в
    Код (Text):
    <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 оптимальным решением
     
  9. Altmer

    Altmer Гость

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

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

    Совет оказался очень дельным!
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей