Wie würde ich den Rand von einem in meine Web-App eingebetteten Iframe entfernen? Ein Beispiel für den Iframe ist:
<iframe src="myURL" width="300" height="300">Browser not compatible.</iframe>
Ich möchte, dass der Übergang vom Inhalt meiner Seite zum Inhalt des Iframes nahtlos verläuft, vorausgesetzt, die Hintergrundfarben sind konsistent. Der Zielbrowser ist nur IE6 und leider helfen Lösungen für andere nicht.
Antworten:
Fügen Sie das
frameBorder
Attribut hinzu (beachten Sie das Großbuchstaben 'B' ).So würde es aussehen:
quelle
frameBorder
ein Fehler auf, da es nicht HTML5-kompatibel ist: Das Frameborder-Attribut für das iframe-Element ist veraltet. Verwenden Sie stattdessen CSS. In HTML5 würde ich eine CSS-Eigenschaft von festlegenborder:0
. Gibt es eine Möglichkeit, es abwärtskompatibel zu machen, ohne Validierungsfehler zu verursachen?Nachdem ich verrückt geworden war und versucht hatte, den Rand in IE7 zu entfernen, stellte ich fest, dass das frameBorder-Attribut zwischen Groß- und Kleinschreibung unterscheidet.
Sie müssen das frameBorder-Attribut mit einem Großbuchstaben festlegen B .
quelle
frameBorder
Großbuchstaben B das HTML-Attribut die Groß- und Kleinschreibung nicht berücksichtigt hat. Und in XHTML sollte alles in Kleinbuchstaben geschrieben seinframeborder
.Wie per iframe Dokumentation ist veraltet und die frameborder „border“ CSS - Attribut wird bevorzugt:
quelle
Zusätzlich zum Hinzufügen des frameBorder-Attributs sollten Sie das Scrolling-Attribut auf "no" setzen, um zu verhindern, dass Bildlaufleisten angezeigt werden.
quelle
Für browserspezifische Probleme fügen Sie
frameborder="0" hspace="0" vspace="0" marginheight="0" marginwidth="0"
laut Dreamweaver auch Folgendes hinzu:quelle
Verwenden Sie das HTML-Iframe-Frameborder-Attribut
http://www.w3schools.com/tags/att_iframe_frameborder.asp
Hinweis: Verwenden Sie die Frame B- Reihenfolge (Kappe B) für den IE, da dies sonst nicht funktioniert. Das iframe-Frameborder-Attribut wird in HTML5 jedoch nicht unterstützt. Verwenden Sie stattdessen CSS.
Sie können das Scrollen auch mit dem Scrolling-Attribut http://www.w3schools.com/tags/att_iframe_scrolling.asp entfernen
Sie können auch ein nahtloses Attribut verwenden, das in HTML5 neu ist. Das nahtlose Attribut des iframe-Tags wird nur in Opera, Chrome und Safari unterstützt. Wenn vorhanden, gibt es an, dass der Iframe so aussehen soll, als wäre er Teil des enthaltenen Dokuments (keine Rahmen oder Bildlaufleisten). Ab sofort wird das nahtlose Attribut des Tags nur in Opera, Chrome und Safari unterstützt. In naher Zukunft wird es jedoch die Standardlösung sein und mit allen Browsern kompatibel sein. http://www.w3schools.com/tags/att_iframe_seamless.asp
quelle
Sie können verwenden
style="border:0;"
in Ihrem Iframe-Code verwenden. Dies ist die empfohlene Methode zum Entfernen von Rahmen in HTML5.Schauen Sie sich mein HTML5-Iframe-Generator- Tool an, um Ihren Iframe anzupassen, ohne Code zu bearbeiten.
quelle
Die Stileigenschaft kann für HTML5 verwendet werden, wenn Sie den Boder Ihres Frames entfernen möchten oder wenn Sie die Stileigenschaft verwenden möchten. wie unten angegeben
Code geht hier
quelle
Fügen Sie das frameBorder-Attribut (Großbuchstabe 'B') hinzu.
quelle
Sie können dies auch mit JavaScript tun. Es werden alle iframe-Elemente gefunden und ihre Rahmen in IE und anderen Browsern entfernt (obwohl Sie in Nicht-IE-Browsern einfach den Stil "border: none;" festlegen können, anstatt JavaScript zu verwenden). UND es funktioniert auch, wenn es verwendet wird, nachdem der Iframe generiert wurde und im Dokument vorhanden ist (z. B. Iframes, die in einfachem HTML und nicht in JavaScript hinzugefügt wurden)!
Dies scheint zu funktionieren, da der IE den Rahmen nicht wie erwartet für das iframe-Element erstellt, sondern für den INHALT des iframe - nachdem der iframe in der Stückliste erstellt wurde. ($ @ & * # @ !!! IE !!!)
Hinweis: Der IE-Teil funktioniert (natürlich) nur, wenn das übergeordnete Fenster und der Iframe vom selben Ursprung stammen (gleiche Domäne, Port, Protokoll usw.). Andernfalls erhält das Skript Fehler "Zugriff verweigert" in der IE-Fehlerkonsole. In diesem Fall können Sie es nur festlegen, bevor es generiert wird, wie andere angemerkt haben, oder das nicht standardmäßige Attribut frameBorder = "0" verwenden. (oder lassen Sie den IE einfach flüchtig aussehen - meine aktuelle Lieblingsoption;))
Ich habe VIELE Stunden gearbeitet, bis ich verzweifelt war, um das herauszufinden ...
Genießen. :) :)
quelle
Ich habe alle oben genannten Schritte ausprobiert. Wenn dies bei Ihnen nicht funktioniert, hat das unten stehende CSS das Problem für mich behoben. Das sagt den Browsern nur, dass sie keine Auffüllungen oder Ränder hinzufügen sollen.
quelle
Wenn der Doctype der Seite, auf der Sie den Iframe platzieren, HTML5 ist, können Sie das
seamless
Attribut wie folgt verwenden :Mozilla dokumentiert das nahtlose Attribut
quelle
Fügen Sie in Ihrem Stylesheet hinzu
Dies ist auch eine praktikable Option.
quelle
Wenn Sie den iFrame verwenden, um die Breite und Höhe des gesamten Bildschirms anzupassen, wobei ich davon ausgehe, dass Sie nicht auf der Größe 300 x 300 basieren, müssen Sie auch die Körperränder wie folgt auf "0" setzen:
quelle
Dieser Code sollte sowohl in HTML 4 als auch in HTML 5 funktionieren.
quelle
Fügen Sie entweder das frameBorder-Attribut hinzu oder verwenden Sie einen Stil mit der Rahmenbreite 0px; oder setzen Sie den Rahmenstil auf none.
Verwenden Sie eine von unten 3:
quelle
setze auch border = "0px"
quelle
Versuchen
Dadurch wird der Rand Ihres Rahmens entfernt.
quelle
Benutze das
Beispiel:
quelle
Um den Rand zu entfernen, können Sie die CSS-Randeigenschaft auf none setzen.
quelle
Es ist einfach, einfach ein Attribut in iframe tag frameborder = 0 hinzuzufügen
<iframe src="" width="200" height="200" frameborder="0"></iframe>
quelle
1. Über Inline Style Set Rand: 0
2. Über das Tag-Attribut frameBorder Set 0
3. Wenn wir mehrere I-Frames haben, können wir Klasse geben und CSS intern oder extern einfügen.
HTML:
CSS:
quelle
Ich hatte ein Problem mit dem unteren weißen Rand und konnte es nicht mit Rand-, Rand- und Auffüllregeln beheben ...
display:block;
Fügen Sie also hinzu, weil iframe ein Inline-Element ist.Dies berücksichtigt Leerzeichen in Ihrem HTML.
quelle
Funktioniert mit Firefox;)
quelle
quelle