Wie zentriere ich einen Iframe horizontal?


234

Betrachten Sie das folgende Beispiel: ( Live-Demo )

HTML:

<div>div</div>
<iframe></iframe>

CSS:

div, iframe {
    width: 100px;
    height: 50px;
    margin: 0 auto;
    background-color: #777;
}

Ergebnis:

Geben Sie hier die Bildbeschreibung ein

Warum iframeist das nicht zentral ausgerichtet wie das div? Wie könnte ich es zentral ausrichten?


6
Warum nicht ein Div für diesen Iframe einwickeln?
Giberno

Antworten:


384

Fügen Sie display:block;Ihrem iframe CSS hinzu.


28
Vielen Dank! Ich hätte inline frame
raten

33
Dafür steht das "i".
Aayush

11
Alternativ können Sie dem Container also eine text-align: centerRegel geben, richtig?
KOVIKO

1
Ja, das Hinzufügen von
Textausrichtung

9
Ich fand, ich musste auch hinzufügenmargin: auto;
MarkyDD

45

Der beste und einfachere Weg, einen Iframe auf Ihrer Webseite zu zentrieren, ist:

<p align="center"><iframe src="http://www.google.com/" width=500 height="500"></iframe></p>

Dabei sind Breite und Höhe die Größe Ihres Iframes auf Ihrer HTML-Seite.


1
Ich dachte, das alignAttribut sei veraltet? Warum sollte das OP diesen Ansatz anstelle von CSS verwenden - was ist der Vorteil?
Andrewsi

4
style="text-align:center"ist nicht veraltet und würde den gleichen Job machen
Anthony

Obwohl es abgeschrieben wird, funktioniert dies, während alles andere nicht funktioniert.
user819490

Dies funktioniert in der HTML-Datei und ist daher für Neulinge wie mich einfacher zu implementieren. Ich habe es gerade 2017 gemacht, damit es nicht abgeschrieben werden darf. Danke für den Tipp!
Renel Chesak

20

HTML:

<div id="all">
    <div class="sub">div</div>
    <iframe>ss</iframe>
</div>

CSS:

#all{
    width:100%;
    float:left;
    text-align:center;
}
div.sub, iframe {
    width: 100px;
    height: 50px;
    margin: 0 auto;
    background-color: #777;

}

11

Wenn Sie ein Video in den Iframe einfügen und möchten, dass Ihr Layout flüssig ist, sollten Sie sich diese Webseite ansehen: Fluid Width Video

Abhängig von der Videoquelle und wenn Sie möchten, dass alte Videos reagieren, muss sich Ihre Taktik ändern.

Wenn dies Ihr erstes Video ist, ist hier eine einfache Lösung:

<div class="videoWrapper">
    <!-- Copy & Pasted from YouTube -->
    <iframe width="560" height="349" src="http://www.youtube.com/embed/n_dZNLr2cME?rel=0&hd=1" frameborder="0" allowfullscreen></iframe>
</div>

Und fügen Sie diese CSS hinzu:

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

Haftungsausschluss: Nichts davon ist mein Code, aber ich habe ihn getestet und war mit den Ergebnissen zufrieden.


Dies dient dazu, das Video im Iframe ansprechbar zu machen, funktioniert einwandfrei, danke!
Ricardo

11

Der einfachste Code zum Ausrichten des iframe-Elements:

<div align="center"><iframe width="560" height="315" src="www.youtube.com" frameborder="1px"></iframe></div>

Bitte lesen Sie diese erste Anleitung. Diese Frage wird beantwortet, bevor Sie Ihre Antwort hier hinzufügen können. Sie müssen jedoch einige Punkte verstehen, bevor Sie antworten können. Fügen Sie zunächst keine Antwort hinzu, die zuvor mit demselben Code oder Vorschlag hinzugefügt wurde. Zweitens, fügen Sie keine übermäßig komplizierte Antwort hinzu, wenn der Benutzer sehr spezifisch nach dem Problem gefragt hat und was er zur Lösung dieses Problems benötigt. Drittens können Sie einen Kommentar hinzufügen, wenn Sie etwas zur Antwort oder Frage vorschlagen möchten.
Ankit Suthar

6

Sie können iframe in a einfügen <div>

<div>
    <iframe></iframe>
</div>

Es funktioniert, weil es sich jetzt in einem Blockelement befindet.


3

Laut http://www.w3schools.com/css/css_align.asp gibt das automatische Setzen des linken und rechten Randes an, dass der verfügbare Rand gleichmäßig aufgeteilt werden soll. Das Ergebnis ist ein zentriertes Element:

margin-left: auto;margin-right: auto;

1
Nur wenn für das übergeordnete Element die Textausrichtung des Stils auf Mitte gesetzt ist.
Parvus

3

Du kannst es versuchen

<h3 style="text-align:center;"><iframe src=""></iframe></h3>

Ich hoffe es ist nützlich für dich

Verknüpfung


1

In meinem Fall bestand die Lösung in der iframe-Klasse und fügte hinzu:

    display: block;
    margin-right: auto;
    margin-left: auto;

0

Hier habe ich einen Ausschnitt für alle von Ihnen, die darunter leiden, Iframe oder Bild horizontal in die Mitte des Bildschirms zu stellen. Gib mir THUMBS UP VOTE, wenn du magst. «

style> img & iframe> Dies ist Ihr Tag-Name. Ändern Sie diesen, wenn Sie ein anderes Tag in der Mitte möchten

<html >
 <head> 
            <style type=text/css>
            div{}
            img{
                 margin: 0 auto;
	         display:block;
         	}
	 iframe{	
		margin: 0 auto;
		display:block;
		}
				
            </style>
</head>
 <body >
           
			<iframe src="https://test-videos.co.uk/vids/bigbuckbunny/mp4/h264/360/Big_Buck_Bunny_360_10s_1MB.mp4" width="320" height="180" frameborder="0" allowfullscreen="allowfullscreen"></iframe> 
			
			<img src="http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/images/BigBuckBunny.jpg" width="320" height="180"  />
            </body> 
            </html>

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.