2009-10-10 8 views
25

Jak powinienem mieć grafikę DIV widoczną u góry strony, gdy użytkownik przewija stronę internetową?DIV, który pozostaje na górze, gdy strona internetowa przewija się pod kątem

Prosty framework JavaScript byłby świetny!

to dla tej strony: http://BiblePro.BibleOcean.com

+5

iść z odpowiedzią Kobi za. Schemat javascriptowy byłby jak uderzanie komara za pomocą karabinu maszynowego. CSS to właściwa droga. – Anthony

+0

Sprawdziłem twoją stronę internetową wymienioną w twoim pytaniu i bardzo mi się podoba, wykonałeś z nią świetną robotę. – amaster

Odpowiedz

9

Tutaj go: http://net.tutsplus.com/tutorials/html-css-techniques/creating-a-floating-html-menu-using-jquery-and-css/

Interesująco, mam to samo pytanie, ale chcę odtworzyć Apple Stor e boczny pasek zakupów. Działa to podobnie, z wyjątkiem tego, że zamienia klasę CSS elementu div, gdy osiągnięta jest określona pozycja przewijania, a więc przechodzi od wartości bezwzględnej do poprawionej. Każdy wie, gdzie mogę to znaleźć, szukałem wszędzie samouczka replikującego efekt.

+2

Używają CSS, aby ustawić koszyk na bezwzględny na szczycie tej kolumny, a ponieważ baner nad kolumną ("nagłówek") jest stałą wysokością, ma javascript, który mówi, aby naprawić całą kolumnę, jeśli okno wierzchołek to określony punkt wysokości dokumentu. Jeśli przejrzysz kod, zauważysz, że używają czegoś, co nazywa się spójnym, aby działało. – Anthony

43

Jeśli nie dbają o IE6, można wykorzystać position: fixed:

div { 
    top: 0; 
    position: fixed 
} 

jQuery, patrz na to pytanie: What is the simplest jQuery way to have a ‘position:fixed’ (always at top) div?

+1

Jako notatkę, 'top: 0;' ustawia odległość od górnej części okna do góry div na 0 (ponieważ px lub em nie jest zapisywane, przeglądarka nie dba o to). To oczywiste, ale dobrze wiedzieć, jak dokładnie to działa. – Isaac

+0

@Isaac Copper - Wierzę, że jednostka nie jest potrzebna dla '0' - czy należy to zmienić, czy też jestem w porządku? – Kobi

+3

@Kobi: Nie ma potrzeby określania jednostek dla '0'. – RichieHindle

2

To proste, wystarczy zrobić górną pozycję Div i będzie działać stałych np

rozpocząć div tag

<div style="position: fixed;background: #336699; width: 100%;"> 

Bądź na górnym końcu div tagu

Powiązane problemy