首頁 >web前端 >html教學 >在WEB裡如何設定iframe自適應

在WEB裡如何設定iframe自適應

php中世界最好的语言
php中世界最好的语言原創
2018-01-20 09:26:541493瀏覽

這次帶給大家在WEB裡如何設定iframe自適應,在WEB裡設定iframe自適應的注意事項有哪些,以下就是實戰案例,一起來看一下。

問題
響應式佈局中,我們應該小心對待iframe元素,iframe元素的width和height屬性設定了其寬度和高度,但是當包含區塊的寬度或高度小於iframe的寬度或高度時,會出現iframe元素溢出的現象:

這樣溢出的iframe會破壞頁面的佈局。我們可以採用一種方法讓iframe元素也具有響應性,拭目以待。

解決方法
iframe元素本身並無法伸縮,除非透過js顯示的設定其寬度。但是我們可透過一個iframe-container元素來包裹iframe,同時讓iframe-container元素的寬度充滿包含塊的寬度,並且根據iframe的長寬比,設定iframe-container元素的padding-bottom百分比。

其實,這種方式的精髓就在於設定iframe-container元素的padding-bottom屬性,設定這個屬性的目的在於變相的設定元素的高度。因為給padding-bottom設定百分比,是相對於父元素的width而言的,如果對height屬性設定百分比,則相對於父元素的height,而父元素的height值我們通常使用預設的auto,因此會出現子元素height也0.因此,我們只能為padding-bottom設定屬性。這樣,只需讓iframe元素充滿iframe-container即可。

.wrap{
           width: 400px;
           margin: auto;
           border: 5px solid greenyellow;
       }
       .iframe-container{
           height: 0;
           padding-bottom: 97.6%;
           position: relative;
       }
       .iframe-container iframe{
           position: absolute;
           left: 0;
           top: 0;
           width: 100%;
           height: 100%;
       }
       @media screen and (max-width: 400px) {
           .wrap{
               width: 300px;
           }
       }
<div class="wrap">
       <div class="iframe-container">
           <iframe height=498 width=510 src="<a href="http://player.youku.com/embed/XOTE0MjkyODgw">http://player.youku.com/embed/XOTE0MjkyODgw</a>" frameborder=0 allowfullscreen></iframe>
       </div>
   </div>

相信看了這些案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

相關閱讀:

怎麼用h5的sse伺服器傳送EventSource事件

h5如何實作記住密碼功能

H5的頁面中怎麼呼叫APP功能

#

以上是在WEB裡如何設定iframe自適應的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn