第二关:min-width/max-width和max-height/max-height

本文深入探讨了CSS中min-width/height与max-width/height的特性及其应用场景,包括它们与width/height的区别、初始值的不同之处、如何处理图片的自适应显示问题以及在实现元素展开收起动画时的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

和width/height相比,min-width/height和max-width/height有以下四点不同:

1、min-width/max-width是为流而生的,像width/height这种定死的砖头式布局,min-width/max-width就没有存在的意义 ,min-width/max-width一定是自适应布局或流体布局中。常应用于表格或图片,在公众号的热门文章中,经常会有图片,这些图片都是用户上传产生的,大小不一,为了避免图片在移动端显示过大影响体验,常常会做下面的max-width限制

img {max-width: 100%;height: auto!important;}

height:auto是必需的,否则,如果原始图片有设定height,max-width生效的时候,图片就会被水平压缩。强制height为auto可以确保宽度不超出的同时使图片保持原有的比例。这样设置体验上存在的问题是:在加载时图片占据高度会从0变成计算高度,图文出现明显的瀑布式下落。

2、与众不同的初始值

max-width/height初始值为none

min-width/height初始值为auto

3、超越!important, 超越最大

超越!important:max-width会覆盖width,即使width使用了!important

<img src="1.jpg" style="width:480px!important;">

img {max-width: 256px;}

超越最大:当设置的min-width比max-width大时,min-width权重大

4、任意高度元素的展开收起动画技术

实现展开收起效果:height + overflow: hidden

element {height: 0; overflow: hidden; transition: height 0.25s;}
element.active {height:auto;}

没有transition效果,只是生硬的展开

优化:

element {height: 0;overflow: hidden; transition: max-height 0.25s;}
element.active {max-height: 800px;}

只要保证展开的max-height值比展开内容高度大就可以,一个高度不定的任意元素的展开动画效果就实现了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值