Przejdź do treści

AutoIFRAME - Skrypty

Wstęp

W jaki sposób automatycznie dopasować wysokość ramki IFRAME do jej zawartości?

W Internecie dosyć popularnym rozwiązaniem, stosowanym na wielu stronach, jest budowanie struktury serwisu w oparciu o tabele (lub elementy <div>...</div>) i ramki <iframe>...</iframe> (przykład takiego właśnie szablonu znajdziesz w rozdziale Struktura tabeli). Jest to wygodne o tyle, że pozwala szybko zbudować stronę elastyczną w aktualizacji, bez wykorzystania języków skryptowych po stronie serwera (np. PHP). Niestety takie rozwiązanie ma przynajmniej jedną poważną wadę: trudno jest dopasować wysokość ramki IFRAME tak, aby była odpowiednia dla każdej rozdzielczości ekranu. Jeśli ustalimy za duży rozmiar, użytkownicy w niskiej rozdzielczości będą mieli problem z przewijaniem zawartości ramki. Natomiast jeśli ustalimy za mały, w wyższej rozdzielczości pojawi się niewielkie "okienko", w którym trudno nawigować. Pewnym rozwiązanie mogłoby być określenie na tyle dużej wysokości, aby treść ramki zawsze się w niej w całości mieściła bez konieczności pokazywania suwaków do przewijania - wtedy będzie tylko jeden suwak pionowy do przewijania całej strony głównej. Niestety takie rozwiązanie nie zawsze jest możliwe, bo na początku nie wiemy jak długie będą nasze podstrony. Poza tym jeśli ustalimy zbyt dużą wysokość, cała strona główna bardzo się rozciągnie, a po wczytaniu do ramki lokalnej krótkiej treści, na jej końcu pozostanie bardzo dużo wolnego miejsca, co będzie wyglądało dosyć dziwnie i na pewno nie będzie wygodne dla użytkownika.

Czy można sobie zatem jakoś poradzić? Oczywiście! Skrypt przedstawiony na tej stronie potrafi całkowicie automatycznie dopasować wysokość ramki IFRAME do długości aktualnie wyświetlanej w niej treści podstrony. Robi to tak, aby nigdy nie pojawił się pionowy suwak do przewijania ramki lokalnej. Wysokość nie będzie ani za duża ani za mała, ale zawsze po prostu idealnie dopasowana.

Komentarze

Zobacz więcej komentarzy

Facebook