问答详情
源自:3-7 根据图片宽高和视口比例设置弹出层尺寸并过渡动画

还是不太明白Math.min里 的比例关系。。。

如果前两个数都小于一  取最小的比例 那图片即使不超过视口 图片也要被缩小了。。

提问者:Chen_dear 2015-07-29 20:22

个回答

  • 一只帅蚂蚁
    2015-08-03 11:56:35
    已采纳

    给你贴出了三种图片在视口里面出现的情况,第一个为例,下面都差不多。http://img.mukewang.com/55bee5cd0001862a08000925.jpg

  • 一只帅蚂蚁
    2015-07-30 21:55:23

     如果宽大于视口,那么宽要乘以的系数必须要比 视口的宽度/图片的宽度 要小才行 (因为只有这样才能让图片在视口里),

    同理高度的系数 也要比 视口的高度/图片的高度 要小才行

    所以符合让图片在视口里的系数 要比这两个系数都小才行

    所以系数能取的范围 是小于 (高度的系数 与 宽度的系数中的最小值)  并不是一定就是这个最小值

    如果这个最小值小于1,我们就用这个最小值,使图片缩放的比例最小,

    如果这个值大于1,我们就用1,因为1在这个范围里,并且可以保证图片不变形

    所以最后系数的表达式就是,Math.min(窗口宽度/图片宽度,窗口高度/图片高度,1);

    也就是3者中的最小值


  • Chen_dear
    2015-08-02 19:49:50

    乘以的系数 是小于视口的宽度/图片的宽度  还是 小于等于 如果是小于的话 那 Math.min(窗口宽度/图片宽度,窗口高度/图片高度,1)取三个中的最小值得话这个系数 应该是等于 高度系数 或者是宽度系数 或者是1吧  也不小于他们呀