Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][CSS] Zmienna szerokosc diva
kkuubbaa88
post 29.06.2009, 19:22:16
Post #1





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

Ostrzeżenie: (0%)
-----


powiedzmy ze mam dwa divy na formie obok siebie:

  1. <div class="div_1"></div>
  2. <div class="div_2"></div>


a style ich sa nastepujace:

  1. .div_1 {
  2. margin:0px;
  3. max-width:690px;
  4. min-width:500px;
  5. float:left;
  6. background-color:#fff000;
  7.  
  8. }
  9.  
  10. .div_2 {
  11. margin:0px 0px 0px 15px;
  12. float:right;
  13. width:493px;
  14. height:100px;
  15. background-color:#ff0000;
  16. }


problem polega na tym, ze jak zmieniam wielkosc okna to pierwszy div zamiast zmieniac swoja szerokosc to pozostaje bez zmian, natomiast drugi div owszem trzyma sie prawej strony, ale wskakuje pod diva pierwszega i rusza sie pod nim... dlaczego ? co mam zle, ze ten pierwszy div nie chce zmieniac swojej pierwotnej szerokosci, a drugi by zostawał na swoim miejscu ?
Go to the top of the page
+Quote Post
Gryf
post 29.06.2009, 19:30:16
Post #2





Grupa: Zarejestrowani
Postów: 170
Pomógł: 40
Dołączył: 14.08.2008
Skąd: Katowice

Ostrzeżenie: (0%)
-----


hmm a nie kazałeś mu zawsze mieć daną szerokość
Kod
width:493px;
Go to the top of the page
+Quote Post
kkuubbaa88
post 29.06.2009, 19:39:20
Post #3





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

Ostrzeżenie: (0%)
-----


tak ten po prawej czyli div_2 ma miec stala szerokosc, a pierwszy div czyli div_1 ma sie zmieniac...
Go to the top of the page
+Quote Post
erix
post 29.06.2009, 20:05:59
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




IMHO floatem tego nie zrobisz.

Ja bym proponował coś takiego:
  1. <div id="parent"><div id="content"></div><div id="col"></div></div>

Kod
parent: position relative
content: margines prawy o szerokości kolumny
col: position absolute i przyklejasz do prawej strony


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
kkuubbaa88
post 29.06.2009, 20:39:34
Post #5





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

Ostrzeżenie: (0%)
-----


cos nie za bardzo chce dzialac... po dodaniu "position absolute" prawy div przelecial na lewa strone i za nic nie chce sie stamtąd ruszyc...
Go to the top of the page
+Quote Post
erix
post 29.06.2009, 20:50:51
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Pozycja dla parent też jest ważna. [;


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
kkuubbaa88
post 29.06.2009, 20:59:15
Post #7





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

Ostrzeżenie: (0%)
-----


rowniez byla ustawiona, a mimo to div_2 jest przy lewym marginesie, a div_1 nadal nie zmienia szerokosci... czemu tak sie dzieje ?
Go to the top of the page
+Quote Post
erix
post 29.06.2009, 21:58:02
Post #8





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Pokaż, co ustawiłeś.


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

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
kkuubbaa88
post 29.06.2009, 22:17:44
Post #9





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

Ostrzeżenie: (0%)
-----


calosc wyglada w ten sposob:

  1. <div style="margin:0px 10px 0px 10px;">
  2.  
  3. <div style="float:left;margin:0px;height:1000px;background-color:#f0ff00;">
  4.  
  5. <div class="margin:0px 0px 0px 0px;float:left;max-width:690px;min-width:500px;background-color:#fff000;">
  6.  
  7. kashdkajhaksdjh dskjhsd kjlash askdjhaskjashasdk jlash askjl sh fakjsl ha fkjlash asdjk hasdkjh asdkjadhaksjd hadskj hkjasdhadkj hdkj ahdskl ajdsh adksj hasdkj hadsj khf jkadsh adskjhkjsdh akdsjhadsk jasdhasdkj hsd kjdsh dsk jhdskj sdh asdkjl hdaskj adsh adkjfha kjasdhfdskjh asdkj hasdkj adhskj hjkds hdskj hdskjlhsdksjadh dskj hdasjk h
  8.  
  9. </div>
  10.  
  11. </div>
  12.  
  13. <div style="float:right;margin:0px;height:1000px;background-color:#00fff0;">
  14.  
  15. <div style="margin:0px 0px 0px 0px;float:left;width:493px;height:100px;background-color:#ff0000;">
  16.  
  17.  
  18. </div>
  19.  
  20. </div>
  21.  
  22. </div>


ale ciagle nie hula...
Go to the top of the page
+Quote Post
seth-kk
post 29.06.2009, 22:33:02
Post #10





Grupa: Zarejestrowani
Postów: 444
Pomógł: 79
Dołączył: 26.05.2009

Ostrzeżenie: (0%)
-----


class w 3cim divie?
prosciej bedzie tak:
  1. <div id="div2" style="padding-left: 492px; overflow: hidden;">
  2. <div id="div1" style="float: left; margin-left: -492px; _margin-left: -246px;">lewy div ze stala szerokoscia</div>
  3. to co po prawej ze zmienna szerokoscia
  4. </div>


--------------------
Go to the top of the page
+Quote Post
nitek
post 29.06.2009, 22:48:28
Post #11





Grupa: Zarejestrowani
Postów: 209
Pomógł: 37
Dołączył: 27.02.2008
Skąd: Kwidzyn

Ostrzeżenie: (0%)
-----


Prosty, działający przykład:

Kod
<html>
<head>
<style>
#menu {
  position: absolute;
  width: 200px;
  right: 20px;
  background-color: #f5f5f5;
}
#content {
  margin-right: 200px;
  background-color: #888888;
  overflow: auto;
}
</style>
</head>

<body>
<div id="menu">
Lorem ipsum
</div>

<div id="content">
Lorem ipsum 2
</div>


</body>
</html>


Inspiracje w takich sytuacjach polecam czerpać np. stąd: http://www.smashingmagazine.com/2007/01/12...-and-templates/ trochę własnego wysiłku i masz to o co ci chodziło.. smile.gif


--------------------
Go to the top of the page
+Quote Post
seth-kk
post 29.06.2009, 22:52:28
Post #12





Grupa: Zarejestrowani
Postów: 444
Pomógł: 79
Dołączył: 26.05.2009

Ostrzeżenie: (0%)
-----


@nitek: moze i prosty ale dziala tylko w okreslonych sytuacjach winksmiley.jpg


--------------------
Go to the top of the page
+Quote Post
nitek
post 29.06.2009, 22:58:29
Post #13





Grupa: Zarejestrowani
Postów: 209
Pomógł: 37
Dołączył: 27.02.2008
Skąd: Kwidzyn

Ostrzeżenie: (0%)
-----


Cytat(seth-kk @ 29.06.2009, 23:52:28 ) *
@nitek: moze i prosty ale dziala tylko w okreslonych sytuacjach winksmiley.jpg


Ok, ale dlaczego? IE + FF dobrze dają sobie radę, Chrome i Safari też nie powinny mieć problemu (akurat nie mam pod ręką).
Jeśli gdzieś to nie działa, chętnie poszerzę swoją wiedzę ;]


--------------------
Go to the top of the page
+Quote Post
seth-kk
post 29.06.2009, 23:11:39
Post #14





Grupa: Zarejestrowani
Postów: 444
Pomógł: 79
Dołączył: 26.05.2009

Ostrzeżenie: (0%)
-----


obiekty z position absolute nie rozpychaja sie wiec ciezko cos obok nich umiescic (choc to zalezy od sytuacji)
nie okresliles position dla obiektu nadrzednego dla tego z position absolute - dopuki jest nim body mozna tego niezaowazyc ale w pozostalych przypadkach polozenie obiektu moze byc inne niz oczekiwane
ps. zakladam ze w doctype jest xhtml;)


--------------------
Go to the top of the page
+Quote Post
kkuubbaa88
post 30.06.2009, 10:46:55
Post #15





Grupa: Zarejestrowani
Postów: 510
Pomógł: 1
Dołączył: 27.08.2007

Ostrzeżenie: (0%)
-----


dzieki, ale te odpowiedzi nie bardzo sa mi w stanie pomoc. Probowalem to podpiac do mojego projektu, ale niestety nie bardzo sie da. Na stronie musze miec taki uklad div'ow i musze sobie z tym poradzic. Dla pomocy zamieszczam obraz, ktory przedstawia problem:



dlatego podalem taki kod wczesniej, a ten class to byl blad przy kopiowaniu. Jak teraz widac musze zrobic, aby to wlasnie lewa kolumna byla z automatyczna szerokosscia. Dla przypomnienia moj kod z przykladowymi kolumnami i po jedyn divie w srodku wyglada tak:

  1. <div style="margin:0px 10px 0px 10px;">
  2.  
  3. <div style="float:left;margin:0px;height:1000px;background-color:#f0ff00;">
  4.  
  5. <div style="margin:0px 0px 0px 0px;float:left;max-width:690px;min-width:500px;background-color:#fff000;">
  6.  
  7. kashdkajhaksdjh dskjhsd kjlash askdjhaskjashasdk jlash askjl sh fakjsl ha fkjlash asdjk hasdkjh asdkjadhaksjd hadskj hkjasdhadkj hdkj ahdskl ajdsh adksj hasdkj hadsj khf jkadsh adskjhkjsdh akdsjhadsk jasdhasdkj hsd kjdsh dsk jhdskj sdh asdkjl hdaskj adsh adkjfha kjasdhfdskjh asdkj hasdkj adhskj hjkds hdskj hdskjlhsdksjadh dskj hdasjk h
  8.  
  9. </div>
  10.  
  11. </div>
  12.  
  13. <div style="float:right;margin:0px;height:1000px;background-color:#00fff0;">
  14.  
  15. <div style="margin:0px 0px 0px 0px;float:left;width:493px;height:100px;background-color:#ff0000;">
  16.  
  17.  
  18. </div>
  19.  
  20. </div>
  21.  
  22. </div>


Efekt jaki chcialbym uzyskac widac na stronie wykop.pl, tam dokladnie lewa czesc div'ow sie zmienia a prawa jest bez zmian.

pozdrawiam i dzieki za pomoc

moze mi ktos pomoc ?

Ten post edytował kkuubbaa88 30.06.2009, 09:00:32
Go to the top of the page
+Quote Post
webber
post 30.06.2009, 10:58:22
Post #16





Grupa: Zarejestrowani
Postów: 107
Pomógł: 19
Dołączył: 30.10.2007

Ostrzeżenie: (0%)
-----


http://www.456bereastreet.com/archive/2005..._width_elastic/
http://www.nowcss.com/layouts/css-fluid-layout-tutorial
o to Ci chodzi? winksmiley.jpg

Ten post edytował webber 30.06.2009, 11:00:54


--------------------
"CSS is like a girlfriend. No matter how hard you try, she will always interpret it a different way."
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 29.05.2025 - 06:36