iframe在iphone6 plus的safari下子頁面的寬度不受父頁面控制的bug


這是想要的效果:

樣式設置是iframe外面的寬度為100%,iframe的寬度為父元素的90%,高度為寬度 除以1.6,固定比例,

正常顯示就是上面的樣子,但是,問題出現在iphone特定手機特定版本的safari瀏覽器上,在它上面會出現:

 

這樣的情況。檢查了一下,發現原因了:

在iframe里面的頁面沒加載出來之前,iframe的寬和高是正常的,當里面的頁面加載完了之后,寬度就會發生變化,當然,

高度也相應改變。父頁面中顯示出來的iframe寬和高其實是子頁面的真實寬高!也就是說子頁面的寬高沒有收到CSS跟JS

的限制(js有改變width的值)。

后來谷歌了一下,找到了解決方法,特來記下:

1:<iframe src="" frameborder="0" id="pptFrame" scrolling="no"></iframe>,

在iframe標簽中,加上scrolling強制沒有滾動條

2:采用width: 1px !important,用最高的權限改變iframe的寬(如果不用這個,子頁面元素的寬會將iframe撐開);

如果再需要改變iframe的寬,可以選擇min-width,或者使用width:XXpx !important


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM