固定元素宽高比


大家可以先想想,如果有这样一个需求:只能使用 CSS,如何让元素大小可以随页面动态变化,同时保持宽高比不变?

GIF.gif


padding-top/padding-bottom


看到这里,也许诸位看官会惊讶万分分,what???我每天都在用 padding,我怎么不知道有这种操作?padding 可以实现固定元素宽高比???当然(实话是,我之前也是一脸懵逼的)。话至此处,就必须从根本上说明问题了。请看 padding-top/padding-bottom 的定义:

描述
length

规定以具体单位计的固定的上(下)内边距值。比如像素、厘米。默认值为0。

% 定义基于父元素宽度的百分比上(下)内边距。
inherit 从父元素继承上(下)内边距。

嗷...嗷...嗷......是否恍然大悟?是否意识到了查看文档的重要性?

之所以能够使用 padding-top/padding-bottom,就是因为当它们的值为百分数时,是以父元素宽度为参考的。

代码如下:

.with-padding-bottom {

    width:30%;

    height:0;

    padding-bottom:15%;

}


vw / vh


vw 相对于视窗的宽度。1vw 等于视窗宽度的1%。
vh 相对于视窗的高度。1vh 等于视窗高度的1%。
vmin vw 和 vh 中较小的那个。
vmax vw 和 vh 中较大的那个。

vw/vh 相对而言容易理解,这里就不再赘述了。

代码如下:

.with-vw {

    width:30vw;

    height:15vw;

}

更多 CSS 技巧,请关注微信公众号



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值