如何將 YouTube 影片嵌入網頁並自適應調整播放尺寸

如何將 YouTube 影片嵌入網頁並自適應調整播放尺寸

要將 YouTube 影片嵌入網頁不難,因為 YouTube 在每個影片分享處就有提供 iframe 語法可讓有需求者自行複製與套用,但套用到網頁後會發現,該影片並不會網頁大小的改變而自動調整播放框,意即並不支援 Responsive Web Design(響應式網頁設計),仔細看其提供的 iframe 的語法會發現 width 及 height 屬性都有固定值,即便是將其屬性值都設定成 100%,依然無法讓其隨網頁大小而自動調整。

iframe 可將 width 及 height 屬性都設定成 100%,但就是無法讓嵌入的 YouTube 影片可自動適應網頁大小,究其原因在於其父容器,換句話說,將 iframe 的 width 及 height 屬性都設定成 100% 沒錯,但如果仍無法讓影片自動適應網頁大小的變化,那麼,問題就出現在包裹 iframe 的 HTML 元素,iframe 元素的寬度和高度會依賴其父容器的寬度和高度,所以父容器也須有明確的寬度和高度設定,否則 iframe 的 100% 設定將無效。

至於,如何讓 YouTube 影片嵌入網頁後可根據網頁大小自動調整播放尺寸?根據上述的說明,我們需要修改 iframe 的寬度和高度成 100% ,也要讓包裹 iframe 的容器可以自動適應 iframe 的尺寸即可。

相關文章

如何取得 YouTube 影片嵌入網址?

1.在影片下方按「分享」按鈕就會看到如下圖的頁面。

如何將 YouTube 影片嵌入網頁並自適應調整播放尺寸

2.再按「嵌入」按鈕就能取得影片嵌入網頁的 iframe 語法。

如何將 YouTube 影片嵌入網頁並自適應調整播放尺寸

如何將 YouTube 影片嵌入網頁並自適應調整播放尺寸

如何讓 iframe 的父容器也可以自動適應?

1.接下來加入以下 CSS 語法,並套用到 iframe 的父元素,例如 div。


.video-container {
position: relative;
width: 100%;
padding-bottom: 56.25%;
}

.video-container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

2.padding-bottom: 56.25%; 的數值從何而來?其實就是用 Youtube 所提供的尺寸 560 / 315 = 0.5625 x 100

3.具體的實現效果,可參閱:

如何將 YouTube 影片嵌入網頁並自適應調整播放尺寸

See the Pen 如何讓 YouTube 影片嵌入網頁後可根據網頁大小自動調整播放尺寸 by master itscai (@master-itscai) on CodePen.