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

html代码如下 

  <divclass="resp-container">



  <iframeclass="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。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

reg183

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值