2

私はYouTube APIをいじっていて、http://jsfiddle.net/aaronk85/wapFR/に以下のコードがあります

<div id="video-wrap2"></div>
<div id="video-wrap">
    <div id="play-video"></div>
</div>
<style>
#video-wrap2 {
    background-color: red;
    width: 666px;
    height: 666px;
    z-index: 1000;
    position: absolute;
}

#play-video {
    display: inline;
    float: left;
    height: 400px;
    width: 100%;
}

#video-wrap {
    float: left;
    display: inline;
    width: 610px;
    overflow: hidden;
    position: absolute;    
    z-index: 1;
}
</style>
<script>
$(document).ready(function() {
    $("#embed").replaceWith("<div id ='play-video'></div>");
    $.getJSON("https://gdata.youtube.com/feeds/api/playlists/UUJUAqHnkDX15IvFoXIGTm2A?alt=json-in-script&callback=?&max-results=1", function(data) {
        $.each(data.feed.entry, function(i, item) {
            var dataContainer = $("#play-video");
            var video = item.media$group.media$content[0].url;
            video = video.replace('https://www.youtube.com/v/','https://www.youtube.com/embed/');
            video = video.replace('version=3&f=playlists&app=youtube_gdata','wmode=opaque');
          $('#play-video').append("<iframe wmode='opaque' style='z-index:0;position:absolute;' width='610' height='400' src="+video+"' frameborder='0' name='vid-frame' id='vid-fade' allowfullscreen></iframe>");    
        });
    });
});
</script>

video-wrap 2 をビデオの上に表示したい (選択したランダムなプレイリスト)。IE を除くすべてのブラウザで、これは機能するようです。IE には何が欠けていますか? 不透明/透明の組み合わせを試しましたが、うまくいきません。同様の質問もいくつか見つけましたが、これらの質問を試した後もまだ問題がありますか?

4

1 に答える 1

1

jsFiddle デモ

IE Web ブラウザーでz-indexは、Web ページのレイアウトに応じて、子要素のプロパティのスタック順序がリセットされます。

ただし、jsFiddle ではposition:absolute、子要素を除くすべての要素にも使用しています。

修正するには、 CSS スタイルに追加position: absolute;してください。#play-video


この代替jsFiddlez-indexはプロパティを使用せずposition:absolute、子要素の設定のみを使用します#play-video

于 2012-12-19T03:21:03.043 に答える