Einbettungen von YouTube-Videos überschreiben den Z-Index
Das Einbetten von YouTube-Videos über Iframes kann zu unerwartetem Verhalten auf Webseiten führen, insbesondere bei Elementen, die geteilt werden der gleiche vertikale Raum. In bestimmten Browsern wie Internet Explorer (IE9) und Chrome können Dropdowns oder andere über dem Video gerenderte Elemente teilweise hinter dem Iframe verborgen erscheinen.
Warum passiert das?
Dieses Verhalten wird nicht direkt durch den Iframe selbst verursacht, sondern durch einen internen CSS-Stil, den YouTube in seinen Einbettungscode einbezieht. Dieser Stil überschreibt die im Iframe festgelegte Z-Index-Eigenschaft, was dazu führt, dass die Videoeinbettung eine höhere Stapelreihenfolge als andere Elemente auf der Seite hat.
Lösung: Hinzufügen des Wmode-Parameters
Um dieses Problem zu beheben, können Sie den Einbettungscode ändern, indem Sie den Parameter wmode mit dem Wert „opaque“ oder „transparent“ hinzufügen. Dadurch wird YouTube angewiesen, seinen internen CSS-Stil zu deaktivieren und den Z-Index des Iframes zu berücksichtigen.
Beispiel für einen Einbettungscode mit wmode:
<code class="html"><iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/lzQgAR_J1PI?wmode=transparent" frameborder="0"> </iframe></code>
Alternative Lösung: JavaScript
Alternativ können Sie JavaScript verwenden, um den Wmode-Parameter dynamisch zu allen Iframes auf der Seite hinzuzufügen. Hier ist ein Beispielausschnitt:
<code class="javascript">$(document).ready(function (){ $('iframe').each(function(){ var url = $(this).attr("src"); $(this).attr("src",url+"?wmode=transparent"); }); });</code>
Das obige ist der detaillierte Inhalt vonWarum überschreiben YouTube-Videoeinbettungen den Z-Index auf Webseiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!