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)* seamlessAtrybut 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 iframei 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/