Ich habe einen iframe. Der Inhalt ist breiter als die Breite, die ich einstelle, so dass der Iframe eine horizontale Bildlaufleiste erhält. Ich kann die Breite des Iframes nicht vergrößern, deshalb möchte ich nur die Bildlaufleiste entfernen. Ich habe versucht, die scroll-Eigenschaft auf "Nein" zu setzen, aber das tötet beide Bildlaufleisten und ich möchte die vertikale. Ich habe versucht, overflow-x auf "hidden" zu setzen, und das hat die horizontale Bildlaufleiste in ff gekillt, aber nicht in IE. traurig für mich.Gefürchte iframe horizontale Bildlaufleiste kann nicht in IE entfernt werden?
Antwort
scrolling="yes" horizontalscrolling="no" verticalscrolling="yes"
Setzen Sie das in Ihrem iFrame-Tag.
Sie müssen nicht versuchen, dies in CSS zu formatieren.
Sie könnten versuchen, den iframe in ein div zu setzen und dann das div für das Scrollen verwenden. Sie können das Scrollen auf dem Div in IE ohne Probleme steuern, IE hat nur wirklich Probleme mit Iframe Scrollen. Hier ist ein schnelles Beispiel, das den Trick machen sollte.
<html>
<head>
<title>iframe test</title>
<style>
#aTest {
width: 120px;
height: 50px;
padding: 0;
border: inset 1px #000;
overflow: auto;
}
#aTest iframe {
width: 100px;
height: 1000px;
border: none;
}
</style>
</head>
<body>
<div id="aTest">
<iframe src="whatever.html" scrolling="no" frameborder="0"></iframe>
</div>
</body>
</html>
Vielen Dank für diese Lösung. Das einzige Problem ist, dass Sie eine feste Höhe für den Iframe-Inhalt definieren müssen, was in meinem Fall variieren wird. Ich werde das verwenden und muss eine extra große Höhe für den iframe angeben, die irgendwie hacky ist. Aber vielen Dank, das hat mich dorthin gebracht. – mrjrdnthms
Die Scrollbar ist nicht eine Eigenschaft der , es ist eine Eigenschaft der Seite, die es enthält. Versuchen Sie overflow-x: hidden
auf das <html>
Element der inneren Seite zu setzen.
arbeitete mit Körperelement. Vielen Dank! –
Diese Lösung ist so viel besser, dass der iframe-Code leicht bleibt und die Kapselung begünstigt. Ich sollte nicht daran denken müssen, Syntax hinzuzufügen und zu merken. –
Ich stimme @DannyG zu. In unserem Markup haben wir die Ära der Präsentationsattribute hinter uns gelassen. Reine CSS-Lösungen sind aus mehreren Gründen vorzuziehen. – DuxPrime
<iframe style="overflow:hidden;" src="about:blank"/>
sollte in IE funktionieren. IE6 hatte Probleme bei der Unterstützung von overflow-x und overflow-y.
Eine andere Sache zu beachten ist, dass IE Grenze auf dem Iframe kann nur entfernt werden, wenn Sie das Attribut "frameborder" in CamelCase.
es wäre nett, wenn Sie es richtig mit CSS formatieren könnten, aber es funktioniert nicht in IE.
In meinem Fall möchte ich die X-Bildlaufleiste entfernen, aber nicht er y und ich glaube, die Einstellung der Überlauf versteckte entfernt beide. Habe ich das richtig? – mrjrdnthms
Alle diese Lösungen funktionierten nicht für mich oder waren nicht zufriedenstellend. Mit dem scrollbaren DIV könntest du die horizontale Bildlaufleiste verschwinden lassen, aber du hättest dann immer die vertikale Scrollleiste.
Also, für meine Website, wo ich sicher sein kann, die feste Höhe aller iframes zu kontrollieren, funktioniert diese folgende Lösung sehr gut. Es verbirgt sich einfach die horizontale Scrollbar mit einem DIV :)
<!-- This DIV is a special hack to hide the horizontal scrollbar in IE iframes -->
<!--[if IE]>
<div id="ieIframeHorScrollbarHider" style="position:absolute; width: 768px; height: 20px; top: 850px; left: 376px; background-color: black; display: none;">
</div>
<![endif]-->
<script type="text/javascript">
if (document.getElementById("idOfIframe") != null && document.getElementById("ieIframeHorScrollbarHider") != null)
{
document.getElementById("ieIframeHorScrollbarHider").style.display = "block";
}
</script>
Sie können auch versuchen, die Breite des Körpers der Seite einstellen, die zu 99% innerhalb des iframe enthalten ist.
- 1. Entfernen iframe horizontale Bildlaufleiste
- 2. IE: vertikale Bildlaufleiste erscheint, wenn die horizontale Bildlaufleiste gezeigt wird
- 3. Horizontale Bildlaufleiste funktioniert nicht
- 4. Horizontale Bildlaufleiste in IE6
- 5. Entfernen Sie die vertikale Bildlaufleiste, halten Sie die horizontale Bildlaufleiste in Iframe in Chrome
- 6. Horizontale Bildlaufleiste in Opera (11.0)
- 7. horizontale Bildlaufleiste im Bootstrap
- 8. Horizontale Bildlaufleiste in WinForms DataGridView
- 9. Breite des IE-Explorers Bildlaufleiste?
- 10. Force horizontale Tabelle Bildlaufleiste
- 11. Slickgrid horizontale Bildlaufleiste deaktivieren
- 12. WPF Horizontale Bildlaufleiste ist nicht sichtbar
- 13. HTML-Divs, Spalten, horizontale Bildlaufleiste
- 14. Listbox horizontale Bildlaufleiste nicht ordnungsgemäß aktualisiert
- 15. Horizontale Bildlaufleiste ausblenden (Angular ui-grid)
- 16. Horizontale Bildlaufleiste - WP Thesis - WARUM?
- 17. Verbergen vertikale Bildlaufleiste in iframe
- 18. Warum funktioniert die Bildlaufleiste nicht in IE?
- 19. Scrollbar kann nicht aus Gridview entfernt werden
- 20. EventListener kann nicht entfernt werden
- 21. Blank iFrame in IE
- 22. Wie kann die horizontale Bildlaufleiste von Gridview in Android verwenden?
- 23. CSS Attribut "Überlauf: blättern" kann nicht Bildlaufleiste im IE 11
- 24. Warum iframe seine Bildlaufleiste nicht versteckt?
- 25. jQuery in iframe funktioniert nicht in IE
- 26. Knoten in Nokogiri kann nicht entfernt werden
- 27. Padding in UITextView kann nicht entfernt werden
- 28. CSS kann nicht in IFrame überschrieben werden
- 29. Probleme mit Datatables und unerwünschte horizontale Bildlaufleiste
- 30. Automatisch angepasste horizontale Bildlaufleiste/Schieberegler anpassen?
zOMG. Während die Attribute horizontalscrolling und verticalscrolling auf MSDN völlig undokumentiert erscheinen, hat dies zur Lösung meines IE 6 Problems beigetragen. –
Große Lösung, genau das, was ich suchte, Tyvm. – David
Ein Problem mit IE10 (ja, von unseren Kunden wird es immer noch verwendet), wo wir einige benutzerdefinierte HTML5-Anzeigen innerhalb von iframe anzeigen. Diesen Trick zu tun hat bei uns nicht funktioniert ... – lkartono