2009-11-04 11 views
32

spec mówi, że poziomy pasek przewijania ma być zawsze wyświetlany, jeśli przekroczono-x: przewijanie jest ustawione.Ukryj pasek przewijania pre, jeśli nie jest potrzebny

Na mojej stronie często zamieszczam kod w <pre> -Block. Ponieważ nie ma on predefiniowanej szerokości, ale otaczający element div ma maksymalną wartość (określoną jako procent), wydaje się, że nie mogę wymyślić, jak osiągnąć następujące wartości: Jeśli blok kodu nie jest zbyt szeroki, ukryj poziomy pasek przewijania . Jeśli przekracza szerokość, wyświetl pasek przewijania. Jakieś wskazówki? Myślę, że wypróbowałem większość kombinacji overflow-x i -y, ale żaden nie wydaje się robić tego, co chcę.

+0

Uh, już używasz 'overflow: auto' na swojej stronie i to działa. Dlaczego pytanie? –

+0

OK, może to jest problem z moją przeglądarką: ale widzę to na FF 3.0 i FF 3.5. – data

+0

Nikt inny nie widzi problemu. Może jesteś zalogowany i dostajesz inny zestaw arkuszy stylów? –

Odpowiedz

98

Zastosowanie:

overflow-x: auto; 

auto informuje przeglądarkę, aby tylko pokazać pasek przewijania, jeśli zawartość przekracza szerokość pudełka.

+0

Przepraszamy, ale jest to nieprawidłowe, przynajmniej z FF3.5. Proszę spojrzeć na moją stronę, aby zobaczyć, że to nie działa (z jakiegoś powodu). – data

+1

Twoja strona działa dla mnie, a ja * używam * Firefoksa 3.5, więc problem musi być gdzie indziej. Ponadto jestem pewien, że to * jest * poprawne. Czy próbowałeś ponownie zainstalować swoją przeglądarkę? –

+0

Czy naprawdę sprawdziłeś na mojej stronie? Działa idealnie, o ile nie zdefiniowano żadnego dna granicznego. Jeśli pokażę dolną granicę dla elementu pre, to dostanę pasek przewijania. Zwykle Twoja wskazówka byłaby poprawna. – data

Powiązane problemy