Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [css] Div oddalony od dolu/bottom o n px
Forum PHP.pl > Forum > Po stronie przeglądarki > CSS
Pucy
Sluchajcie probowalem na wiele sposobow zrobic by div trzymal mi sie dolu diva w ktorym sie znajduje... nie chce tak reagowac poniewaz mam marginesy na -20k xp i overflow wylaczone a stopka jest na clear:both...

DIV o ktorym mowie znajduje sie w dobrej pozycji z pionie, ale jako ze stopka jest stala i niezmienna, moglbym go zmusic aby odstawal od dolu strony o np. 95px, wtedy znalazlby sie na dobrym miejjscu... teraz troche kodu

  1. <div id="container">
  2. <div id="links" class="column">
  3.  
  4. <div class="category"><br />START</div>
  5. <div class="sep"><br /></div>
  6.  
  7. <div class="category">STRONY INTERNETOWE
  8. <div class="link"><a href="#">KONSULTING, SZKOLENIA</a></div>
  9. <div class="link"><a href="#">AKTUALIZACJA PORTALI</a></div>
  10. <div class="link"><a href="#">NARZEDZIA</a></div>
  11. </div>
  12. <div class="sep"><br /></div>
  13.  
  14. <div class="category">STRONY INTERNETOWE
  15. <div class="link"><a href="#">KONSULTING, SZKOLENIA</a></div>
  16. <div class="link"><a href="#">AKTUALIZACJA PORTALI</a></div>
  17. <div class="link"><a href="#">NARZEDZIA</a></div>
  18. </div>
  19.  
  20. <div id="news">
  21. NEWSLETTER
  22. </div>
  23.  
  24. </div>
  25.  
  26.  
  27.  
  28. <div id="center" class="column">
  29.  
  30. <div id="centerx">
  31.  
  32. sda <br />sda <br />sda <br />sda <br />sda <br />
  33. sda <br />sda <br />sda <br />sda <br />sda <br /><br />
  34. sda <br />sda <br />sda <br />sda <br />sda <br />
  35. sda <br />sda <br />sda <br />sda <br />sda <br />
  36. sda <br />sda <br />sda <br />sda <br />sda <br />
  37. sda <br />sda <br />sda <br />sda <br />sda <br />
  38.  
  39. </div>
  40.  
  41. </div>
  42.  
  43.  
  44. </div>
  45. <div id="fotter">
  46.  
  47. <div class="fleft"><img src="./templates/page/images/fot1.gif" alt="" /></div>
  48. <div class="fright">xxx</div>
  49.  
  50. </div>


CSS:

  1. #container {
  2. width:780px;
  3. overflow:hidden;
  4. }
  5.  
  6. #container .column {
  7. padding-bottom: 20010px; /* X + padding-bottom */
  8. margin-bottom: -20000px; /* X */
  9. }
  10.  
  11. #center {
  12. border:0px solid black;
  13. width:566px;
  14. float:right;
  15. }
  16.  
  17. #links {
  18. padding-bottom:100px;
  19. width:214px;
  20. border:0px solid black;
  21. float: left; background-image:url('../page/images/bglinks.gif');
  22. background-repeat:no-repeat;
  23. background-color:#535353;
  24. }
  25.  
  26. #news {
  27. border:1px solid black;
  28. width:214px;
  29. postion:relative;
  30. margin-left:10px;
  31. padding-bottom:100px;
  32. height:50px;
  33. }
  34.  
  35. /*** IE Fix ***/
  36. * html #left {
  37. left: 214px; /* RC fullwidth */
  38. }
  39. #fotter { padding:0px; width:780px; border:0px solid black; clear:both;}
  40. #fotter .fleft { width:214px; height:95px; float:left; }
  41. #fotter .fright { width:566px; height:95px; float:right; background-image:url('../page/images/fot2.gif'); }


P.S Ogolnie chodzi mi o taki rezultat jak na tym pliku
http://republika.pl/pucal/1.JPG

zielony - rozszerze czerwony (zaleznie od tresci)
czerwony - rozszerza zielone (zaleznie od tresci)
brazowy - jest zawsze na dole zielonego bez wzgledu na tresci w poprzednich dwoch prostokatach.

Kto mi pomoze osiagnac taki rezultat?
s_w_ir
Kod
position : absolute;
bottom:0;

Teraz tak, kod ten tyczy się stopki. Jesli na stronie będziesz miał wystarczająco dużo zawartości aby zawsze było zajęte minimum całe okno przeglądarki to na pewno siądzie na dole diva głownego.
Dla gównego diva:
Kod
position : absolute;
top:0;
Pucy
MOze przetestuje, ale pytalem sie znajomego to mi powiedzial tak: "sztuka dla sztuki. Albo sie wykrwawisz zrobisz to i zapomnisz, albo zrobisz to na tabeli..."
s_w_ir
Bez obrazy dla Twojego znajomego, ale...
Tabele zostały stworzone do odpowiedniego prezentowania danych tabelarycznych, i to jest ich miejsce. Kiedyś nie było CSS i programiści tworzyli odpowiedni layouty za pomocą mnóstwa tabel zagnieżdżanych oraz przeźroczystych gifów. Kod był pajęczyną tabel w której gubiłeś następnego dnia gdy chciałeś edytować jakieś dane. Dziś dązymy do oddzielenia wyglądu strony od jej treści, co daje nam właśnie CSS. Inna sprawa że trzeba się troche napracować żeby uzyskać to co dostalibyśmy w "krótszym" czasie za pomocą tabel, ale...
WARTO!!! Dwa, pięć , dziesięć projektów i już nie będzie to dla Ciebie stanowić problemu, a zyskasz bardzo wiele na czytelności kodu.
Jednak wybór jak zawsze należy do Ciebie smile.gif Pozdrawiam.
mike
Cytat(Pucy @ 12.08.2006, 13:01 ) *
zielony - rozszerze czerwony (zaleznie od tresci)
czerwony - rozszerza zielone (zaleznie od tresci)
brazowy - jest zawsze na dole zielonego bez wzgledu na tresci w poprzednich dwoch prostokatach.

Kto mi pomoze osiagnac taki rezultat?

Czyżby chodzio o to: example ?

P.S.
Powiedz koledze żeby się rozpędził i walnął głową w kaloryfer a nie takie pierdoły o tabelkach plecie.
nasty
Cytat
inna sprawa że trzeba się troche napracować żeby uzyskać to co dostalibyśmy w "krótszym" czasie za pomocą tabel, ale...

no, niewiem czy w tabelkach jest szybciej, bo domyslne to maja paskudne bordery, spacingin itd, nie mowiac o colspanach i rowspanach. w css niema takich problemow.
s_w_ir
Mowa oczywiście o pierwszych próbach, przy przejściu z modelowania tabelowego na <div> + CSS winksmiley.jpg
Pucy
Znam definicje i zastosowanie tabel...

mike_mech: no prawie tylko chodzi oto ze jak masz czerwony ktory rozciagnal calosc, to ten niebieski blok powinien byc na samym dole, a co za tym idzie to zielony blok powienien pokazac puste miejsce (wez to szare miejsce na dole zmien na zielony i walnij miedzy zielonym i niebieskiem) - i oto mi chodzi.

Mowicie CSS, ok zgodze sie, ale czy aby na pewno WSZYSTKO da sie przedstawic za pomoca tego? A co jesli nie potrafisz tego zrobic i nikt inny tez nie porafi Ci w tym pomoc? Nie lepiej jest dodac minimum socjalne z tabelli z dwoma <tr> i trzema <td>, hm? Chociaz chodzi tutaj o przejrzystosc kodu, ale wstawienie takiej tabeli wcale kodu nie zasmieca. A czy mysla przewodnia nie jest rowniez to, zeby pisalo sie latwo i przyjemnie? Aby programowanie sprwialo radosc, a nie generowalo zhizofreniczne mysle po tygodniach rozkminiania: "jak to zrobic, czemu oni nie odpisuja... questionmark.gif "

Ja na przyklad czerpie przyjemnosc z tego co robie... nie poswiece wakacji aby rozkminic ten jeen konkretny pomysl, ktorego moge juz nigdy nie zastosowac. Stad sie wzielo postanowienie: zrobie to lepiej na tabeli.

P.S CSS dla ludzi, programistow, dla kodu... sa pewnestandardy? Ale czy wstawienie tabeli zburzy jakikolwiek standard xHTMLa?
s_w_ir
Jesli jestes programista to naturalna cechą programisty jest ciągłe poszerzanie swojej wiedzy, a poświęcenia wakacji na to żeby poznać nowe techniki da Ci to że za dwa lata nie wypadniesz z rynku ze swoim modelowaniem tabelami.

Później zerkne na Twój kod i zobacze co da sie zrobić żebyś uzyskał to poprawną metodą. Pozdrawiam.
Pucy
Jestem programistą , tylko dlaczego mam poswiecac caly czas na jeden problem, jezeli ejst jeszcze wiele innych przeciwnosci losu? Jednak wole przyswoic 56 innych rzeczy w tydzien, niz 1 w 3 miechy, a jezeli tak mowisz to wlasnie moze pomozesz rozwiazac ten problem... Jak uda Ci sie rozwiazac to, to ja zastanowie sie jeszcze raz nad swoim podejsciem:> Poza tym spojrz na moja sygnature... wierze w to bezgranicznie, a jednak zrezygnowalem z podejscia pelnego Css


P.s Mam pytanie apropos forum samego, nie wiecie czy jest tu jakies zabezpieczenie przed wyprzedzaniem psotow? tzn jezeli ja jestemw trakcie pisania jakiegos posta a ktos pisze i skonczyl przede mna, a to mogloby zmienic moj poglad lub cala odpowiedz, to czy bede o tym poinformowany?questionmark.gif
s_w_ir
Masz, jeśli coś CI nie pasuje to pisz
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
  2. "http://www.w3.org/TR/2001/REC-xhtml11-20010531/DTD/xhtml11-flat.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl">
  4. <head>
  5. <link rel="stylesheet" href="style.css" type="text/css" />
  6. </head>
  7. <!-- Main view !-->
  8. <body>
  9. <div id="container">
  10. <div id="links">
  11. <div class="category"><strong>STRONY INTERNETOWE</strong></br>
  12. <a href="#">KONSULTING, SZKOLENIA</a><br />
  13. <a href="#">AKTUALIZACJA PORTALI</a><br />
  14. <a href="#">NARZEDZIA</a><br />
  15. </div>
  16. <div id="news">
  17. NEWSLETTER
  18. </div>
  19. </div>
  20.  
  21. <div id="fotter">
  22. <img src="./templates/page/images/fot1.gif" alt="" />
  23. <span>xxx</span>
  24. </div>
  25. <div id="center">
  26. <div id="centerx">
  27. sda <br />sda <br />sda <br />sda <br />sda <br />
  28. sda sda sda sda sda
  29. sda <br />sda <br />sda <br />sda <br />sda <br />
  30. sda sda sda sda sda
  31. sda <br />sda <br />sda <br />sda <br />sda <br />
  32. sda sda sda sda sda
  33. sda <br />sda <br />sda <br />sda <br />sda <br />
  34. sda sda sda sda sda
  35. </div>
  36. </div>
  37. </div>
  38. </body>
  39. </html>


Kod
body
{
    margin: 0;
    padding: 0;
}

html, body, #container
{
    min-height: 100%;
    width: 100%;
    height: 100%;
}
html>body, html>body #contents {
    height: auto;
}

#container
{
    border: 0;
    position: absolute;
    top: 0;
    left: 0;
}
    
#links
{
    border: 0;
    position: absolute;
    top: 0;
    left: 0;
    background: green;
    width: 13em;
}

#center
{    
    border: 0;
    margin: 0;
    margin-left: 13em;
    background: red;
}

#fotter
{
    position:absolute;
    bottom: 0;
    left: 0;
    width: 13em;
    background: brown;
}



Ps. nic Cie nie ostrzeże.
Pucy
Czy ja naprawde zle tlumacze? s_w_ir to nie tak:( Otwieram w FF a tam zonk. Czerwonie nie rozciaga zielonego, brazowe w ogole jest na dole ekranu, a jego dolny border powinine byc na równi z dolnym borderem czerwonego... Zaloze sie ze zielone gdyby wypelnicz tekstem to wcale by nie pociagnelo czerwonego....

P.S. mike_mech byl najblizej, ale to i tak nie to... A ja dalej czekam na pomoc, i ewentualnie rozwiazania.

P.S 2
Cytat
Jesli jestes programista to naturalna cechą programisty jest ciągłe poszerzanie swojej wiedzy, a poświęcenia wakacji na to żeby poznać nowe techniki da Ci to że za dwa lata nie wypadniesz z rynku ze swoim modelowaniem tabelami.
Rozumiem ze mam czekac na kolejne pomysly?
s_w_ir
Jak tłumaczysz tak masz: w kodzie mike_mech'a brakowało Ci tego żeby szare(puste miejsce) pole zamienić z niebieskim, a teraz nagle chcesz żeby jedno rozciągało drugie.

Możesz czekać...
Pucy
Cytat
(wez to szare miejsce na dole zmien na zielony i walnij miedzy zielonym i niebieskiem) - i oto mi chodzi.


Mamy blok na srodku strony.... po lewej jest zielone, na dole zielonego jest brązowe, po peawej jest niebieskie... Jezeli wpisujemy w zielone to brazowe ejst zawsze na dole zielonego, a rozciagane jest niebieskie wieksze po prawej... w momencie gdy w zielonym jest mniej tekstu, a w niebieskim jest wiecej, to niebieskie rozciaga zielone, pozotawiajac puste miejsce W ZIELONYM!! a brazowe jest zawsze na dole zielonego, na rowni z niebieskim ( dolna krawedz brazowego jest na rowni z dolna krawedzia niebieskiego - ZAWSZE)
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.