CSS如何让iframe实现自适应高度的效果

互联网 18-10-31
如今越来越多的人使用手机浏览网页,因此网站的响应能力越来越重要。在手机上测试网站时,尝试了很多次才弄清楚为什么我的视频没有达到我的预期,直到发现了一个很棒的CSS技巧,可以让iframe实现自适应高度。接下来就和大家分享iframe动态实现自定义高度的方法,感兴趣的小伙伴可以参考借鉴一下。

iframe自适应高度

出于演示目的,本文将使用视频嵌入我们的iframe。首先,访问视频网址,点击视频下的“分享”,然后点击“嵌入”,具体代码如下:

<iframe width="560" height="315" src="https://www.youtube.com/embed/dQw4w9WgXcQ"  frameborder="0" gesture="media" allow="encrypted-media" allowfullscreen></iframe>

接下来,我们需要删除width =“560”height =“315”,因为这里是设置iframe的大小。由于我们需要自己设置尺寸,因此我们不需要这样做。

使用CSS

之后,我们需要将iframe放在另一个html元素的<div>中,这是非常重要的,因为这个元素将调整你的iframe大小。然后将CSS类添加到包装的元素中,将一个类添加到iframe,如下所示。

<div class="resp-container">     <iframe class="resp-iframe" src="https://www.youtube.com/embed/dQw4w9WgXcQ" gesture="media"  allow="encrypted-media" allowfullscreen></iframe> </div>

使用以下样式定义包装类:

.resp-container {     position: relative;     overflow: hidden;     padding-top: 56.25%; }

position: relative和iframe的位置在这里非常重要。position: relative以便稍后我们可以将iframe与包装元素相关联。这是因为在CSS中,position: absolute基于最接近的非静态父元素定位元素。

overflow: hidden 是否隐藏任何可能放在容器外面的元素。

padding-top: 56.25%这就是关键所在。在CSS中,padding-top属性可以设置百分比,这使我们的iframe保持正确的比例。通过使用百分比,它将根据元素的宽度计算要使用的填充。在我们的示例中,我们希望保持56.26%的比率,也可以使用其他比率。

按如下方式定义iframe类:

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

position: absolute;这将为iframe提供相对于包装器的位置,并将其放置在包装器的填充上。

top: 0并left: 0用于将iframe定位在容器的中心。

width: 100%并且height: 100%使IFRAME采取所有包装的空间。

完成后,你应该得到一个响应的iframe。

总结:在本文中,我们已经看到了可以让iframe实现自适应高度的技巧。正如您所看到的,它实际上非常简单,希望这篇文章可以给你节省数小时的尝试时间。

【相关教程推荐】

1、CSS教程

2、<iframe>是什么?html中iframe标签的用法详解

3、CSS在线手册

以上就是CSS如何让iframe实现自适应高度的效果的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:使用CSS解决文本溢出的方法

相关资讯