Удалить полосу прокрутки из 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 вертикальной полосы прокрутки?
Спасибо.
19 ответов
Это работает во всех браузерах. jsfiddle здесь http://jsfiddle.net/zvhysct7/1/
<iframe src="http://buythecity.com" scrolling="no" style=" width: 550px; height: 500px; overflow: hidden;" ></iframe>
Добавление scroll="no"
а также style="overflow:hidden"
на iframe не сработало, пришлось добавить style="overflow:hidden"
в теле HTML-документа, загруженного внутри iframe.
Просто добавь scrolling="no"
а также seamless="seamless"
атрибуты тега iframe. как это:-
1. XHTML => scrolling="no"
2. HTML5 => seamless="seamless"
Попробуйте добавить
scrolling="no"
атрибут, как показано ниже:
<iframe frameborder="0" scrolling="no" style="height:380px;width:6000px;border:none;" src='https://yoururl'></iframe>
Если у кого-то здесь есть проблема с отключением полос прокрутки на iframe
, это может быть связано с тем, что содержимое iframe имеет полосы прокрутки на элементах ниже html
элемент!
Некоторые макеты установлены html
а также body
до 100% высоты, и используйте #wrapper
Div с overflow: auto;
(или же scroll
), тем самым перемещая прокрутку к #wrapper
элемент.
В таком случае ничто из того, что вы сделаете, не помешает появлению полос прокрутки, кроме редактирования содержимого другой страницы.
Добавьте это в свой CSS, чтобы скрыть обе полосы прокрутки
iframe
{
overflow-x:hidden;
overflow-Y:hidden;
}
<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, и он не будет показывать полосу прокрутки в любом браузере.
iframe {
display: block;
border: none; /* Reset default border */
height: 100vh; /* Viewport-relative units */
width: calc(100% + 17px);
}
div {
overflow-x: hidden;
}
Таким образом вы увеличиваете ширину iframe больше, чем должна быть. Затем вы скрываете горизонтальную полосу прокрутки с помощью overflow-x: hidden.
Это последнее средство, но стоит упомянуть - вы можете использовать ::-webkit-scrollbar
псевдоэлемент на iframe
Родитель, чтобы избавиться от этих знаменитых полос прокрутки 90-х годов.
::-webkit-scrollbar {
width: 0px;
height: 0px;
}
Изменить: хотя это относительно поддерживается, ::-webkit-scrollbar
может не подходить для всех браузеров. используйте с осторожностью:)
Добавьте это в свой CSS, чтобы скрыть только горизонтальную полосу прокрутки
iframe{
overflow-x:hidden;
}
Ни один из приведенных выше ответов не помог мне. Вот что сделали в JS:
Выберите элемент iframe:
var iframe_name = document.getElementById("iframe_name");
Добавьте к нему атрибут:
iframe_name.scrolling = "no";
Вместо iframe:
const blob = new Blob([data], { type: "application/pdf" });
const link = document.createElement("a");
const URL = window.URL.createObjectURL(blob);
link.href = URL;
link.download = filename;
//download the pdf
link.click();
//open the downloaded pdf in its default viewer
window.open(URL);
Использование отрицательного поля и скрытого переполнения, чтобы скрыть полосу прокрутки
<div class="scrollbar-hider" style="overflow:hidden">
<div class="scrollbar-hider-margin" style="margin-right: -17px;">
<iframe src=""
style="display: block;
overflow: hidden scroll;
height:calc(100vh - 65px);
width: 100%"
frameborder="0" loading="lazy">
</iframe>
</div>
</div>
Когда ничего не работает, float:left может вас спасти.
iframe{поплавок: влево; ясно: оба;}
бесшовная = «бесшовная» прокрутка = «нет»
— это два атрибута, которые используются для удаления полосы прокрутки и слабой линии, окаймляющей iframe.
Вы можете комбинировать это с другими атрибутами ограничения размера, чтобы встроить страницу в другую так, чтобы она не выглядела так, как вы. Это помогает воссоздать данные, которые обычно приходится перекодировать и занимать место на сервере.
Наконец, включение якорей, таких как <href, позволит вам направить iframe на определенную часть страницы. Вы должны грубо создать метку вызова на этой странице, направленной на объект.
Веселиться!!!! :)