Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: 'fixed' i min-width: 800px;
Forum PHP.pl > Forum > Po stronie przeglądarki > CSS
expert
Witam,

siedzę już parę godzin nad tym i nie mogę nic wykombinować, w sensie jak coś niby działa to nie do końca.

Chodzi mi o to, aby w tym przykładzie: http://limpid.nl/lab/css/fixed/header-and-footer dodać taką opcję, że jak strona zmniejszy się do 800px, to dodaje dolny scrolbar i to co jest w fixed (nagłówek i stopka) przesuwa sie razem z tym scrolbarem.

Wiadomo, że jak się da fixed, to nagłówek i stopka 'wyłażą' z rodzica i są niezależne, wiec fixed nie może być...

Czy da sie coś takiego zrobić? I chcę to zrobić bez js. Sam css.
prowseed
Footer bedziesz musial przezucic na dol (pod content) i nadac mu z-index by byl wyzej, niz tresc wlasciwa, a tak poza tym, to
  1. @media screen and (max-width: 800px) {
  2. body>div#header{
  3. position:relative;
  4. }
  5. body>div#footer{
  6. position:relative;
  7. }
  8. }

a position fixed wywal do @media screen and (min-width: 801px){}

Jak bedziesz mial jeszcze problemy to pisz, zrobilbym to teraz, ale juz troche za pozno, a ja sam lekko podpity- poradzisz sobie mysle, w koncu jestes expert : )
expert
Na razie mam taki efekt: http://siekier.pl/test.html

Jak wrócę, to wieczorem się pobawię.

Edit:

Wszystko ładnie pięknie, poza jednym.

Jak przesunie się stronę trochę w dół i width okna jest mniejszy od 800px, to header i footer uciekają w górę i nie zostają na swoich miejscach.
Owszem przesuwaja sie w lewo i w prawo, ale nie zachowuja swoich pozycji, czyli top: 0 i bottom: 0 względem okna przeglądarki.

Przy width <800px fixed totalnie odpada, ale absolute i relative przesuwają się wraz z oknem przeglądarki (mam na myśli przesuwanie pionowe).

Się zastanawiam, czy to w ogóle da się obejść bez js. Mógłbym z js, ale wolę huhać na zimne, że ktoś będzie miał brak obsługi js i nie chce, żeby strona mu się rozwalała.
prowseed
  1. div#header{
  2. position:absolute;
  3. top:0;
  4. left:0;
  5. width:100%;
  6. height:30px;
  7. background-color: blue;
  8. z-index: 100000;
  9. }
  10. div#footer{
  11. position:absolute;
  12. bottom:0;
  13. left:0;
  14. width:100%;
  15. height:30px;
  16. background-color: red;
  17. z-index: 100000;
  18. }

Wywal position, top/bottom i left z głównych styli izastąp je position:relative w media-query dla max:818
expert
A ten kod co podałeś, to gdzie?
prowseed
To jest Twój kod i wypisałem Ci co masz usunąć : )

Dodatkowo będziesz musial usunąć padding z body, zaaplikowac go tylko do min:819 i wyzerowac w max:818
expert
Teraz header i footer uciekają na górę i na dół...

W ogóle, to wiesz o co mi chodzi? :-)
prowseed
Wydaje mi sie, ze tak, aczkolwiek juz nie wiem sam : )
Zobrazuj to jakos lepiej, przedstaw w postaci rysunku czy cos, to pomoge Ci to przepisac na css : )
Aha, i zrob szablon na jsfiddle, bedzie mi latwiej edytowac zywy organizm.
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.