2011-02-10 24 views
6

Mam następujących znacznikówCSS white-space: nowrap poziomego przewijania bug

<style type="text/css"> 
    #outer 
    { 
     min-height: 100%; 
     height: auto !important; 
     height: 100%; 
     width:100%; 
     white-space:nowrap; 
    } 

    #inner 
    { 
     background-color:#CCCCCC; 
     margin:0px 4px 0px 4px; 
     padding:5px 5px 0px 5px; 
     border:1px solid #9A9A9A; 
     border-width:1px 1px 0px 1px; 
    } 

</style> 

<div id="outer"> 
    <div id="inner"> 
    TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST 
    </div> 
</div> 

Gdy przeglądarka jest wystarczająco szeroka, wygląda to wide

Gdy przeglądania jest zmieniany wąski, to wygląda w ten sposób: narrow

Chcę, aby szare tło wąskiego widoku rozciągało się do końca w prawo po przewinięciu. Co z moim znaczników i CSS jest przyczyną tego niepożądanego efektu (występują w Chrome, FF3 i IE8)

+2

+1 To zdarza się nawet z Facebookiem! – JCOC611

Odpowiedz

5

Łatwym rozwiązaniem jest, aby to zrobić: na #outer, usunąć i dodać float: leftwidth: 100%.

Live Demo

+0

Co powinienem zrobić, jeśli nie chcę pływać w lewo? –

+1

@NathanGould: Ciężko odpowiedzieć bez wiedzy * dlaczego * nie chcesz używać 'float: left'. Zamiast tego możesz użyć 'display: inline-block', jeśli to pomaga. – thirtydot