4

在此处输入图像描述

在上图中,您可以看到原始图像大小和图像在赋予属性“object-fit:contain”后缩小。

我们可以在给出“Object-fit:contain”属性后计算有效图像大小吗?

4

2 回答 2

8

加载后的图像对象包含容器的显示尺寸和原始图像的尺寸。所以计算相当简单:

function getContainedSize(img) {
  var ratio = img.naturalWidth/img.naturalHeight
  var width = img.height*ratio
  var height = img.height
  if (width > img.width) {
    width = img.width
    height = img.width/ratio
  }
  return [width, height]
}

[ http://jsfiddle.net/wvbpcjhk/ ]

于 2018-09-05T14:21:22.687 回答
-1

您可以通过 JavaScript 使用以下几种方法获取元素的尺寸:

总显示区域 - 测量具有所有附加功能(如边距、边框等)的内容所占据的显示区域。

element.offsetHeight;
element.offsetWidth; 

显示的内容 - 测量可见的内容(包括填充)。

element.clientHeight;
element.clientWidth;

总内容 - 测量可见和隐藏的总内容(包括填充)。

element.scrollHeight;
element.scrollWidth;
于 2018-09-05T13:44:40.020 回答