Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wykorzystanie JS w CSS
kapitan kloss
post 4.01.2012, 19:53:04
Post #1





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 18.11.2004

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


Czy jest jakas mozliwosc na wykorzystanie szerokosci strony pobieranej z JS w css?
Kod
<script type="text/javascript">
    winwidth=document.all?document.body.clientwidth:window.innerWidth;
    winHeight=document.all?document.body.clientHeight:window.innerHeight;
</script>


Potrzebuje te wartosci podstawic w kodzie, poniewaz potrzebuje miec uklad 3-kolumnowy z zadana minimalna szerokoscia kolumny srodkowej i wypelniajacymi pozostala przestrzen ekranu lewa i prawa. Chodzi o to ze przy duzym zmniejszeniu szerokosci okna przegladarki, prawa kolumna ucieka mi na dol, a nie moge ich zlapac wszystkich w jeden DIV (pod divem znajduje sie obszar klikalny).

Kod
.lewa {
    background-color:red;
    width:40%;
    min-width:100px;
}
.srodek {
    background-color:blue;
    width:20%;
    min-width:100px;
}
.prawa {
    background-color:yellow;
    width:39%;
    min-width:100px;
    overflow:hidden;
}


--------------------
Apache + php 5 + PostgreSQL (Mac OS X)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
kamil4u
post 4.01.2012, 21:00:08
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


W JS zmień szerokość zaraz po wczytaniu strony.
Kod
document.getElementById('test').style.width = 'wartość';

Nadaj id elementom i umieść kod w zdarzeniu onload.


--------------------
Go to the top of the page
+Quote Post
Shili
post 4.01.2012, 21:06:25
Post #3





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

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


@up

style.width zadziała tylko dla stylów inline.

http://www.quirksmode.org/dom/getstyles.html

@down
Faktycznie, przepraszam za niedoczytanie i za zamieszanie.
Styl inline natomiast jest to styl umieszczony w atrybucie html style (z ang. inline style sheet)

Ten post edytował Shili 4.01.2012, 21:51:29
Go to the top of the page
+Quote Post
kamil4u
post 4.01.2012, 21:49:33
Post #4





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


@Shili: el.style.width zmienia w CSS wartość width, czyli to co chce zmienić autor tematu. Ty mówisz o pobieraniu stylu, a nie o ustwianiu. Przy pobieraniu musisz uwzględnić także tzn. box-model, czyli również obramowanie i padding. I co to jest styl inline?


--------------------
Go to the top of the page
+Quote Post
erix
post 4.01.2012, 22:05:13
Post #5





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




Cytat
Potrzebuje te wartosci podstawic w kodzie, poniewaz potrzebuje miec uklad 3-kolumnowy z zadana minimalna szerokoscia kolumny srodkowej i wypelniajacymi pozostala przestrzen ekranu lewa i prawa. Chodzi o to ze przy duzym zmniejszeniu szerokosci okna przegladarki, prawa kolumna ucieka mi na dol, a nie moge ich zlapac wszystkich w jeden DIV (pod divem znajduje sie obszar klikalny).

Od tego są media queries.


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

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
kapitan kloss
post 6.01.2012, 17:26:25
Post #6





Grupa: Zarejestrowani
Postów: 107
Pomógł: 0
Dołączył: 18.11.2004

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


No fajnie - media queries, ale jak chce mieć styl zawsze włączony. Robienie oddzielnych plików dla różnych szerokości jest absurdalne. Potrzebuje miec trzy kolumnowy uklad na stronie przy zalozeniu srodkowej kolumny o szerokosci np. 100px. Taka sytuacja powoduje, że ustalenie kolumn pobocznych na zasadzie 40%+40% powoduje ze prawa kolumna będzie mi znikać. Mogę zadać parametr overflow, ale tylko wtedy kiedy wszystkie kolumny sa zalaczone w jednej warstwie - a tego zrobić mi znowu nie można.

Ręce mi już odpadają od kodowania - bo efektów nie widać. Stąd pomysł ściągania (ale na bieżąco) jaka jest szerokość okna.
Rozumiem że nie da się tego zrobić.

Zrobiłem tylko z wykorzystaniem CSS - działa, może nie doskonale, ale działa.

Ten post edytował kapitan kloss 6.01.2012, 17:26:40


--------------------
Apache + php 5 + PostgreSQL (Mac OS X)
Go to the top of the page
+Quote Post
erix
post 6.01.2012, 19:32:28
Post #7





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




Cytat
No fajnie - media queries, ale jak chce mieć styl zawsze włączony. Robienie oddzielnych plików dla różnych szerokości jest absurdalne. Potrzebuje miec trzy kolumnowy uklad na stronie przy zalozeniu srodkowej kolumny o szerokosci np. 100px.

Najpierw sprawdzamy, czy mamy pojęcie, potem krytykujemy:
  1. @media all and (min-width:500px) { … }
  2. @media (min-width:500px) { … }

Żadnych osobnych plików.


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

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

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: 14.08.2025 - 09:47