Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Rozszerzalny div zachodzący na inne div-y
Forum PHP.pl > Forum > Po stronie przeglądarki > CSS
rugby
Witam!

Chciałbym wstawić div-a z tekstem o zmiennej długości (inner), który przesłaniałby 3 div-y (top, mid i bot) z pewnymi background-image. Oczywiście można ustawić:
  1. #inner { position: absolute; top: 20px; left: 20px; }

natomiast chodzi mi o to, żeby w miarę zwiększania się tekstu w div-ie inner, zwiększała się wysokość mid, natomiast div-y top i bot miały stałą wysokość. Da się to zrobić w czystym CSS?


Szkic:
Kod
+-top-----------------------------------------+
|     +-inner------------------------------+  |
|     |                                    |  |
+-mid-|   text text text text text text    |--+
|     |   text text text text text text    |  |
|     |   text text text text text text    |  |
|     |   text text text text text text    |  |
|     |   text text text text text text    |  |
+-bot-|   text text text text text text    |--+
|     |                                    |  |
|     +------------------------------------+  |
+---------------------------------------------+


HTML:
  1. <div id="outer">
  2. <div id="top"></div>
  3. <div id="mid"></div>
  4. <div id="bot"></div>
  5. <div id="inner">text ...</div>
  6. </div>
kamil4u
Nie - pozostaje JavaScript
erix
Da się. tongue.gif

Tylko trzeba zmienić - niestety - kolejność warstw w HTML:

  1. <div id="top">
  2. <div id="bottom">
  3. <div id="mid">
  4. <div id="inner">
  5. </div></div></div></div>

Ustawiasz odpowiednio background bez powtarzania. Ogólna zasada - tło mid jest na całej wysokości, bottom i top zasłaniają je w odpowiednich miejscach. I wtedy nie ma potrzeby korzystania z position: absolute, tylko sobie manipulujesz marginesami.
rugby
Zrobiłem podobnie, wstawiłem inner wewnątrz mid i ustawiłem CSS:
  1. #inner { position: relative; margin: -10px 20px -10px 20px; }

W ten sposób inner zachodzi mi 10px na top i bot.
erix
Rób paddingami dla rodziców. Z marginesami jest nieraz dziwna sprawa (zależy od przeglądarki) oraz tzw. zapadanie się marginesów.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.