Два div
От: vadimcher  
Дата: 14.09.09 08:08
Оценка:
Два div расположены так:
11111112222222
11111112222222
11111112222222
11111111111111
11111111111111
11111111111111
11111111111111

Соответственно, код:
<div1>
  <div2 float:right>
    222....
  </div2>
  111....
</div1>

Мне понадобилось, чтобы div2 висел также, как и сейчас, но, чтобы он сам генерился после того, как сгенерится контекст div1, т.е. что-то типа
<div1>
  111....
  <div2>
    222....
  </div2>
</div1>

или даже
<div1>
  111....
</div1>
<div2>
  222....
</div2>

но главное, чтобы висело как раньше, т.е. div2 внутри div1, и текст, параграфы, картинки, дивы и т.п. внутри div1 "обтекали" div2.

P.S. Это на самом деле .php файл, в котором в div2 вызываются методы одного класса, который генерит контекст на основании того, что он видит в div1.

А вот зайца кому, зайца-выбегайца?!
Re: Два div
От: Курилка Россия http://kirya.narod.ru/
Дата: 14.09.09 08:17
Оценка: +1
Здравствуйте, vadimcher, Вы писали:

V>P.S. Это на самом деле .php файл, в котором в div2 вызываются методы одного класса, который генерит контекст на основании того, что он видит в div1.


Может стоит лучше подумать над зависимостями, чтобы в коде выгонки результата был именно вывод форматированной инфы, а не какие-то хитрые манипуляции? Или MVC не подходит по идеологическим соображениям?
Re[2]: Два div
От: vadimcher  
Дата: 14.09.09 15:08
Оценка:
Здравствуйте, Курилка, Вы писали:

К>Здравствуйте, vadimcher, Вы писали:


V>>P.S. Это на самом деле .php файл, в котором в div2 вызываются методы одного класса, который генерит контекст на основании того, что он видит в div1.


К>Может стоит лучше подумать над зависимостями, чтобы в коде выгонки результата был именно вывод форматированной инфы, а не какие-то хитрые манипуляции? Или MVC не подходит по идеологическим соображениям?


Мне так подходит, но мешают "бремя старого кода" и к тому же чужого
Автор: vadimcher
Дата: 05.06.06
.

А вообще, дизайн в целом спроектирован именно так, чтобы логика и представление были отделены максимально. div1 содержит основной контекст страницы, строится он вызовом соответствующих классов, которые собирают всю необходимую информацию (берется контекст в raw формате, парсится в html собственными встроенными методами + методы добавленных plugin-ов). Все, что генерится, распихивается по соответствующим дивам внутри div1 в логичную иерархическую структуру. Поэтому, изменение дизайна, в принципе, делается изменениями внутри основного .php (в крайнем случае) и добавлением нужных css-правил. div2 содержит дополнительную информацию, такую как страницы сайта, меню текущего пользователя и т.п. В основном, это глобальная информация, независимая от текущего контекста. Поэтому изменения дизайна не приводили к негативным последствиям до сих пор. Но среди компонент div2 оказался один, который требует, чтобы страница была пропарсена до того, как он вызывается. Представь, что это компонент, который, например, подсчитывает какую-то статистику текущего документа (количество слов, или таблиц ну и т.п.)

Вопрос, в принципе, простой. Можно ли поместить div2 в конец div1 или после него и добавить какие-то css-правила или что-то еще, чтобы div2 "всплыл" на свое место внутри div1. Или, например, так: можно ли поместить div2 после div1, но так, чтобы средствами css он оказался наверху (наподобие position:absolute), но контекст div1 "обтекал" его. Пока в голову приходит только одно: поместить div2 после div1 и добавить клиентский javascript, который перенесет div2 внутрь div1 -- решение со своими очевидными недостатками.

P.S. ОЧЕНЬ не хочется тем самым экскаватором разгребать ВСЮ кучу...

А вот зайца кому, зайца-выбегайца?!
Re[3]: Два div
От: avpavlov  
Дата: 14.09.09 15:34
Оценка:
Ну тогда разве что генерировать какой либо плэйсхолдер на месте ДИВ2, потом генерировать контент ДИВ2 и вставлять его в запомненное место реплэйсом
Re[3]: Два div
От: Курилка Россия http://kirya.narod.ru/
Дата: 14.09.09 15:43
Оценка:
Здравствуйте, vadimcher, Вы писали:

V>Вопрос, в принципе, простой. Можно ли поместить div2 в конец div1 или после него и добавить какие-то css-правила или что-то еще, чтобы div2 "всплыл" на свое место внутри div1. Или, например, так: можно ли поместить div2 после div1, но так, чтобы средствами css он оказался наверху (наподобие position:absolute), но контекст div1 "обтекал" его. Пока в голову приходит только одно: поместить div2 после div1 и добавить клиентский javascript, который перенесет div2 внутрь div1 -- решение со своими очевидными недостатками.


V>P.S. ОЧЕНЬ не хочется тем самым экскаватором разгребать ВСЮ кучу...


В таких условиях понятно.
А про задачу — большие сомнения у меня. Фактически ты хочешь, чтоб было абсолютное позиционирование, но вместе с тем хочешь обтекание как при относительном...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.