以前「YouTube動画の表示サイズをレスポンシブにする方法。」でJavaScriptを使ってYouTubeなどの動画をレスポンシブに対応させる方法をご紹介しました。
今回はiframeで出力された動画をCSSを使って簡単にレスポンシブ化する方法をご紹介します。
ステップ1:動画を用意する
上記の記事を参考に、YouTubeからiframeで埋め込みコードを取得します。今回は参考に下記の動画を使います。
レスポンシブ化する動画
<iframe width="560" height="315" src="http://www.youtube.com/embed/k7sbl0p9kxw" frameborder="0" allowfullscreen></iframe>
ステップ2:クラス名を指定する
先ほどのiframeに任意のクラス名を指定します。今回はyoutubeというクラスを付けましょう。
<div class="youtube"> <iframe width="560" height="315" src="http://www.youtube.com/embed/k7sbl0p9kxw" frameborder="0" allowfullscreen></iframe> </div>
ステップ3:CSSで調整する
あとは下記のCSSで先ほど指定したクラス名のスタイルを調整することで、画面幅に合わせてYouTube動画のサイズも可変するようになります。
.youtube { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; margin-top: 20px; margin-bottom: 20px; } .youtube iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
当たり前ですが、指定するクラス名を変えた場合はCSSの「.youtube」も同じクラス名にしてくださいね。