2012-04-10 19 views
67

Utilizzando questo codiceRimuovere barra di scorrimento da iframe

<iframe frameborder="0" style="height: 185px; overflow:scroll; width: 100%" src="http://www.cbox.ws/box/?boxid=439&boxtag=7868&sec=main" marginheight="1" marginwidth="1" name="cboxmain" id="cboxmain" seamless="seamless" scrolling="no" frameborder="0" allowtransparency="true"></iframe> 

Questo è come appare (la shoutbox sulla homepage del http://www.talkjesus.com)

Come posso rimuovere la barra di scorrimento orizzontale e modificare il css della barra di scorrimento verticale?

Grazie.

+1

duplicato con http://stackoverflow.com/questions/4856746/hide-horizontal-scrollbar-on-an-iframe che ha una risposta migliore –

risposta

15

nel CSS:

iframe{ 
    overflow:hidden; 
} 
+4

Grazie, ma solo scorrimento orizzontale e continua a essere visualizzato in Firefox. Non viene visualizzato in Chrome né IE. Inoltre, i CSS per scrollbar vengono applicati in modo efficace solo in IE, non in FF né in Chrome (quest'ultimo mostra colori/sfumature beige di aspetto predefinito). –

+4

non funziona: http://jsfiddle.net/greggman/98ttg9vz/ – gman

+2

Questo non funzionerà perché l'overflow avviene nel documento iframe, che in genere non sarà possibile modificare a causa della sicurezza iframe tra domini restrizioni. – 10basetom

8
<div id="myInfoDiv" seamless="seamless" scrolling="no" style="width:100%; height: 100%; float: left; color: #FFF; background:#ed8719; line-height:100%; font-size:100%; font-family: sans-serif>; 

Utilizzare i div sopra e non mostrerà barra di scorrimento in qualsiasi browser.

+1

l'attributo 'seamless' non è valido HTML5, non è supportato dalla maggior parte dei browser (http://caniuse.com/#search=seamless) e la maggior parte degli altri stili non è necessaria. – Pere

2

Aggiungi questa nel CSS per nascondere solo la barra di scorrimento orizzontale

iframe{ 
    overflow-x:hidden; 
} 
172

Aggiungi scrolling="no" attributo per l'iframe.

+1

in grado di farlo con css? – Evorlor

+0

Sì, ma in Chrome non è possibile utilizzare scrollIntoView. Vedere https://code.google.com/p/chromium/issues/detail?id=137214 –

+0

bene, questo nasconde la barra di scorrimento del contenuto e impedisce lo scorrimento del contenuto. non impedisce la visualizzazione della barra di scorrimento dell'iframe. –

4

Aggiungi questo nel vostro CSS per nascondere sia la barra di scorrimento

iframe 
{ 
    overflow-x:hidden; 
    overflow-Y:hidden; 
} 
15

Questo funziona in tutti i browser. jsfiddle qui http://jsfiddle.net/zvhysct7/1/

<iframe src="http://buythecity.com" scrolling="no" style=" width: 550px; height: 500px; overflow: hidden;" ></iframe> 
6

Basta aggiungere scrolling="no" e seamless="seamless" attributi di iframe tag. in questo modo: -

1. XHTML => scrolling="no" 
2. HTML5 => seamless="seamless" 
+6

L'attributo seamless è stato [rimosso da HTML] (https://github.com/whatwg/html/issues/331). – neopickaze

+0

È necessario utilizzare css anziché attributo seamless. –

7

Aggiunta di scorrimento = "no" e style = "overflow: hidden" on iframe non ha funzionato, ho dovuto aggiungere style = "overflow: hidden" sul corpo del documento HTML caricata all'interno iframe.

+0

Ottimo aiuto !!!!! –

+0

Se questo ti aiuta, c'è un problema in Firefox, dove se hai un elemento 'Trasforma: scale (0.7)' o simili, questo creerà barre di scorrimento (che appariranno nel tuo iFrame), a meno che tu non lo ritocchi con ' overflow: hidden; 'su un antenato (potrebbe essere una div invece del corpo). – WraithKenny

1

Se qualcuno qui sta avendo un problema con la disattivazione barre di scorrimento sul iframe, potrebbe essere perché il contenuto del iframe ha barre di scorrimento su elementi sotto l'elemento html!

Alcuni layout impostati html e body al 100% altezza, e utilizzare un div #wrapper con overflow: auto; (o scroll), così da spostare lo scorrimento all'elemento #wrapper.

In tal caso, nulla di ciò impedirà la visualizzazione delle barre di scorrimento tranne la modifica del contenuto della pagina.

Problemi correlati