Javascript-форум (https://javascript.ru/forum/)
-   (X)HTML/CSS (https://javascript.ru/forum/xhtml-html-css/)
-   -   div position:static (https://javascript.ru/forum/xhtml-html-css/23232-div-position-static.html)

Rootpassword 17.11.2011 01:06

div position:static
 
Как отталкиваться от левого верхнего угла родительского div-a, если родительский div имеет position:static ( то есть вложенный див с position:absolute будет цепляться к краю окна браузера ). При условии, что у родителя position:static менять на что-либо другое невозможно.
средствами css без js.

trikadin 17.11.2011 01:08

Цитата:

Сообщение от Rootpassword
При условии, что у родителя position:static менять на что-либо другое невозможно.

Поменять у вложенного div'a position: absolute на position: relative, например.

Rootpassword 17.11.2011 01:14

исходный див на момент добавления потомка непуст.

Rootpassword 17.11.2011 01:18

То есть, если использовать position: relative, то отсчет начнется от того места, где будет первоначально вставлен наш потомок, а это не левый верхний угол родителя, само собой.

trikadin 17.11.2011 01:19

Цитата:

Сообщение от Rootpassword
исходный див на момент добавления потомка непуст.

Т.е. он у вас динамически добавляется? Ну так добавьте его в начало, какие проблемы?

Rootpassword 17.11.2011 01:33

Цитата:

Сообщение от trikadin (Сообщение 137056)
Т.е. он у вас динамически добавляется? Ну так добавьте его в начало, какие проблемы?

У меня как раз он не динамически добавляется.
Но даже если я его сделаю динамически добавляющимся - условно говоря, вставив див с relative в начало, все остальное у меня уедет. при absolute другие элементы отображаются на веб-странице словно absolute позиционированного элемента нету.

trikadin 17.11.2011 01:49

Цитата:

Сообщение от Rootpassword
при absolute другие элементы отображаются на веб-странице словно absolute позиционированного элемента нету.

Хм... Я ценю ваши старания, но честное слово, я знаю как ведут себя элементы с различным позиционированием)) Вы мне уже второй раз порываетесь мне объяснить...

Можно попробовать добавлять в начало элемент с position: relative и нулевой шириной/высотой, и уже в него аппендить нужный элемент.

ksa 17.11.2011 09:27

Rootpassword, начинай уже делать тестовые примеры, хорош лениться...

Pavel M. 17.11.2011 10:55

можно так подвинуть абсолютно позиционированный элемент внутри статического, просто маржинами

по стандарту, если у абсолютно позиционированного нет left top, то он должен быть на месте где был бы, если бы он был static

<p>adfaf adfad fasdf</p>
<p>adfaf adfad fasdf</p>

<div style="width:200px; height:100px; border: 1px solid;">
    
    <div style="width: 50px; height: 50px; position: absolute; background: red; opacity:0.5; margin: 10px;">
    </div>
    
    <p>adfaf adfad fasdf</p>
        
    <p>adfaf adfad fasdf</p>
    
</div>

<p>adfaf adfad fasdf</p>
<p>adfaf adfad fasdf</p>

Rootpassword 17.11.2011 15:48

Пример того, что мне надо. Основной див тут- position:relative, нужен static

<p>adfaf adfad fasdf</p>
<p>adfaf adfad fasdf</p>

<div style="width:400px; height:300px; border: 1px solid; position:relative;  ">
    <p>adfaf adfad fasdf</p>
        
    <p>adfaf adfad fasdf</p>
<div style=" position: absolute;  background: green; opacity:0.5; width:100%; height:100%; top:0px; left:0px;  ">
</div>
   

</div>

<p>adfaf adfad fasdf</p>
<p>adfaf adfad fasdf</p>


Пытаемся так(предложение trikadin)
Нету доступа к размерам дива(100%-это 0)
<p>adfaf adfad fasdf</p>
<p>adfaf adfad fasdf</p>

<div style="width:400px; height:300px; border: 1px solid; position:static;  ">
<div style=" position: absolute;">
<div style=" position: absolute;  background: green; opacity:0.5; width:100px;  height: 100px; ">
</div>
</div>

    <p>adfaf adfad fasdf</p>
        
    <p>adfaf adfad fasdf</p>
   

</div>

<p>adfaf adfad fasdf</p>
<p>adfaf adfad fasdf</p>


Аналогично у Pavel M.


Часовой пояс GMT +3, время: 04:59.