Automatische Höhe beim Einbetten eines YouTube-Videos?
Lesezeit: 3 Minuten
Ich habe ein YouTube-Video auf meiner Website eingebettet, aber das Problem ist, dass ich die Höhe automatisch basierend auf der Breite und dem Seitenverhältnis des Videos anpassen muss. Wenn meine Breite also 1280 beträgt, sollte meine Höhe 720 betragen, wenn das Video 16:9 ist. Ich habe versucht, ‘VW’- und ‘VH’-Einheiten zu verwenden, aber diese scheinen nicht mit einem Iframe zu funktionieren. Meine Breite ist bereits proportional eingestellt.
Wie das funktioniert: Das Containerelement erhält eine Nullhöhe und eine prozentuale untere Polsterung. Die prozentuale untere Polsterung ist ein Prozentsatz der Containerbreite, wodurch ein festes Seitenverhältnis entsteht. Aber damit der Iframe innerhalb des Containers mit der Höhe Null angezeigt wird, müssen Sie den Container relativ und den Iframe absolut machen, positioniert innerhalb des div.
BEARBEITEN:
Wenn Sie eine andere prozentuale Breite als 100 % verwenden müssen, multiplizieren Sie das Verhältnis mit dem Multiplikationsfaktor für die Breite. Siehe das Beispiel unten:
Dieser Code hat bei mir nicht funktioniert, es sei denn, .video-container hat auch width: 100% darauf setzen, genau wie im Beispiel in der Quelle davon wird kopiert
– benmneb
19. September 2021 um 11:44 Uhr
Höhe löschen: 0;
– Sherman Chen
31. Dezember 2021 um 19:44 Uhr
michal.jakubeczy
Wenn Sie sich für das gesamte Ansichtsfenster entscheiden, können Sie den folgenden Code verwenden:
iframe{
width: 100vw;
height: calc(100vw/1.77);
}
Ross Rogers
Ich konnte eine responsive Iframe-Größe mit erstellen vw an beide Breite und Höhe des Stilelements, weil ich die horizontale Breite kenne, die die Elemente verwenden sollen, und dann berechne ich die Höhe basierend auf der Breite und dem Wissen, dass das Video 16:9 ist. Wenn Sie möchten, dass das Video 45 % des horizontalen Platzes über Bildschirmgrößen von 893 Pixel und ansonsten 90 % einnimmt, dann:
Vielen Dank. Dies funktionierte gut für meine Anforderung.
– Chandana
31. Juli 2021 um 8:25 Uhr
Brian Zelip
Die Html width Attribut akzeptiert nur Zahlen (“gültige nicht negative ganze Zahlen”), keine Zeichenfolgen mit angehängten Maßeinheiten (%, px, vw usw.) wie in der ursprünglichen Frage.
Wenn Sie die Breite kennen iframe‘s Container (in einer absoluten Einheit wie z px oder vwnicht %) dann können Sie verwenden css calc() für eine Zeile height Lösung im CSS:
Beantwortet das deine Frage? Anzeigen eines YouTube-Videos mit Iframe in voller Seitenbreite
– MrUpsidown
13. Oktober 2020 um 10:58 Uhr
Beantwortet das deine Frage? stackoverflow.com/questions/15844500/…
– MrUpsidown
13. Oktober 2020 um 10:59 Uhr