2013-03-13 4 views
5

Come nascondere le barre di scorrimento di Firefox quando overflow: auto?firefox scroll bar hidden

:: - webkit-scrollbar { display: nessuno; }

Io uso questo codice ma funziona solo su Google Chrome.

qualsiasi aiuto ragazzi? Grazie!

Aggiornato

quando ho usato

overflow: hidden;

la mia pagina non può procedere al piè di pagina.

<html> 
<head> 
<link rel="stylesheet" href="css/style.css" type="text/css" /> 
</head> 

<body> 

<div id="pageWrapper"> 
    <header></header><!--end of header--> 

    <nav> 
     <ul> 
      <li><a href="#">Home</a></li>| 
      <li><a href="#">Services</a></li>| 
      <li><a href="#">Gallery</a></li>| 
      <li><a href="#">FAQ</a></li>| 
      <li><a href="#">About Us</a></li>| 
     </ul> 
    </nav><!--end of nav--> 

    <aside> 

    </aside><!--end of aside--> 

    <section> 
    </section><!--end of section--> 
    <footer>All Right Reserved 2013.</footer><!--end of footer--> 
</div><!--end of pageWrapper--> 

</body> 
</html> 

mio css

/*----- Reset ----*/ 
html, body, div, span, object, h1, h2, h3, h4, h5, h6, p, 
blockquote, pre, a, address, code, img, small, strong, 
dl, dt, dd, ol, ul, li, fieldset, form, label{ 
margin:0; 
padding:0; 
border:0; 
outline:0; 
font-size:100%; 
vertical-align:baseline; 
background:transparent; 
} 
body{ 
line-height:1.5; 
font-family: helvetica, arial, sans-serif; 
} 

body,html{ 
    height:100%; 
    background-color:whitemsoke; 
} 

ol, ul{ 
list-style:none; 
} 

/* ---- END OF RESET --- */ 
#pageWrapper{ 
    width:965px; 
    height:100%; 
    margin:auto; 
    box-shadow:1px 1px 17px black; 
    overflow:hidden; 
} 
::-webkit-scrollbar { 
    display:none; 
} 
header{ 
    background-color: #D4E7ED; 
    height:200px; 
} 
nav{ 
    text-align:center; 
    background-color:#003366; 
    padding:10px; 
} 
nav ul li{ 
    display:inline; 
    padding:20px; 
} 
nav ul li a{ 
    text-decoration:none; 
    color:whitesmoke; 
} 
nav ul li a:hover{ 
    text-decoration:underline; 
} 
aside{ 
    width:200px; 
    background-color:#666666; 
    height:100%; 
    overflow:hidden; 
    float:left; 
    margin:0 auto -20px 0; 
} 
section{ 
    background-color:#CCCCCC; 
    height:100%; 
    margin:0 auto -20px 0; 
    overflow:hidden; 
} 
footer{ 
    background-color:#003366; 
    height:20px; 
    position:relative; 
} 
+2

Perché non usi 'overflow: hidden'? –

+0

Ci proverò, signore, grazie. ma non c'è modo di nascondere le barre di scorrimento in Firefox quando si utilizza l'overflow: auto? –

+0

non funziona Non riesco a vedere il mio footer: | –

risposta

10

non ho trovato nulla di specifico per Firefox. Ho anche cercato un equivalente a ::-webkit-scrollbar { display:none }.

Quello che ho trovato, però, è una soluzione cross-browser generico:

<div class="outer"> 
    <div class="inner"> 
     Some content... 
    </div> 
</div> 

<style> 
.outer { 
    overflow: hidden; 
} 
.inner { 
    margin-right: -16px; 
    overflow-y: scroll; 
    overflow-x: hidden; 
} 
</style> 

La barra di scorrimento è nascosto dal div genitore.

Ciò richiede l'utilizzo di overflow:hidden nel div padre, ma in caso contrario funziona come un fascino.

+0

margine-destra: -16px è molto intelligente! – duhaime

+0

Se si sceglie questa opzione tenere in considerazione le barre di scorrimento hanno dimensioni diverse su ciascun browser, prestare particolare attenzione ai dispositivi touch screen. – Grirg

+0

Non funziona su FF 56 quando il contenuto div interno è più lungo della larghezza dello schermo –