2012-04-10 6 views
67

Используя этот кодУдалить полосы прокрутки из 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> 

Это, как представляется, (Рупор на домашней странице http://www.talkjesus.com)

Как удалить горизонтальную полосу прокрутки и изменения CSS вертикальной прокрутки?

спасибо.

+1

дубликат с http://stackoverflow.com/questions/4856746/hide-horizontal-scrollbar-on-an-iframe, который имеет лучший ответ –

ответ

15

в вашем CSS:

iframe{ 
    overflow:hidden; 
} 
+4

Спасибо, но только горизонтальная прокрутка и показывается в Firefox. Не отображается в Chrome и IE. Кроме того, CSS для полосы прокрутки применяется эффективно только в IE, а не в FF и Chrome (последний показывает по умолчанию бежевый цвет/оттенки). –

+4

не работает: http://jsfiddle.net/greggman/98ttg9vz/ – gman

+2

Это не будет работать, потому что переполнение происходит в документе iframe, который вы, как правило, не сможете изменить из-за междоменной защиты iframe ограничения. – 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>; 

Используйте выше DIV и он не будет отображаться полоса прокрутки в любом браузере.

+1

Неверный атрибут 'бесшовный' HTML5, не поддерживаемый большинством браузеров (http://caniuse.com/#search=seamless), и большинство других стилей не нужно. – Pere

2

Добавить это в CSS, чтобы скрыть просто горизонтальная полоса прокрутки,

iframe{ 
    overflow-x:hidden; 
} 
172

Добавить scrolling="no" атрибут в IFRAME.

+1

в состоянии сделать это с помощью css? – Evorlor

+0

Да, но в Chrome нельзя использовать scrollIntoView. См. Https://code.google.com/p/chromium/issues/detail?id=137214 –

+0

ну, это скрывает полосу прокрутки контента и предотвращает прокрутку содержимого. это не мешает появлению полосы прокрутки iframe. –

4

Добавить это в CSS, чтобы скрыть ОБА полосы прокрутки

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

Это работает во всех браузерах. jsfiddle здесь http://jsfiddle.net/zvhysct7/1/

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

Просто добавь scrolling="no" и seamless="seamless" атрибуты IFrame тег. как это: -

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

Исключительный атрибут был [удален из HTML] (https://github.com/whatwg/html/issues/331). – neopickaze

+0

Вы должны использовать css вместо бесшовного атрибута. –

7

Добавление свитка = «нет», и стиль = «переполнение: скрытый» на IFRAME не работал, мне пришлось добавить стиль = «переполнение: скрытый» на теле HTML документа, загруженного в IFrame.

+0

Отличная помощь !!!!! –

+0

Если это помогает, в Firefox есть проблема, если у вас есть элемент CSS 'transform: scale (0.7)' или такой, это создаст полосы прокрутки (которые будут отображаться в вашем iFrame), если вы не закрепите ее с помощью ' overflow: hidden; 'на предка (может быть div вместо тела). – WraithKenny

1

Если кто-то здесь возникают проблемы с отключением скроллбаров на iframe, это может быть потому, что содержание этого IFrame имеет полосы прокрутки на элементах нижеhtml элемента!

Некоторые макеты установить html и body до 100% высоты, а также использовать #wrapper DIV с overflow: auto; (или scroll), тем самым перемещая прокрутку к #wrapper элемента.

В таком случае ничего, что вы сделаете, не позволит показывать полосы прокрутки, кроме редактирования содержимого другой страницы.