Muszę ukryć poziomy pasek przewijania w elemencie iframe, używając css, jquery lub js.
Muszę ukryć poziomy pasek przewijania w elemencie iframe, używając css, jquery lub js.
Odpowiedzi:
Sugerowałbym zrobienie tego z kombinacją
overflow-y: hidden;
scrolling="no"
(dla HTML4)seamless="seamless"
(dla HTML5)* seamless
Atrybut został usunięty ze standardu i żadna przeglądarka go nie obsługuje.
.foo {
width: 200px;
height: 200px;
overflow-y: hidden;
}
<iframe src="https://bing.com"
class="foo"
scrolling="no" >
</iframe>
scrolling="no"
Wydaje się, że dodanie atrybutu do elementu iframe usuwa paski przewijania w Chrome.
scrolling="no"
ustaw scrolling="no"
atrybut w swoim iframe.
Jeśli możesz zmienić kod dokumentu w swoim iframe
i ta zawartość jest widoczna tylko w jego oknie nadrzędnym, po prostu dodaj następujący CSS w swoim iframe
:
body {
overflow:hidden;
}
Oto bardzo prosty przykład:
To rozwiązanie pozwala na:
Zachowaj poprawność HTML5, ponieważ nie wymaga scrolling="no"
atrybutu w iframe
(ten atrybut w HTML5 został wycofany).
Działa na większości przeglądarek korzystających z przepełnienia CSS : ukryty
Nie potrzeba JS ani jQuery.
Uwagi:
Aby nie zezwalać na poziome paski przewijania, użyj tego CSS:
overflow-x: hidden;
Ta odpowiedź dotyczy tylko witryn korzystających z Bootstrap. Responsywna funkcja osadzania w Bootstrap obsługuje paski przewijania.
<!-- 16:9 aspect ratio -->
<div class="embed-responsive embed-responsive-16by9">
<iframe class="embed-responsive-item" src="http://www.youtube.com/embed/WsFWhL4Y84Y"></iframe>
</div>
jsfiddle: http://jsfiddle.net/00qggsjj/2/