避免拉伸图像css

Zin*_*est 9 css image

我正在将图像渲染到我的div中.我想避免拉伸我的形象.

    div {
           height: 300px;
           width: 300px; 
        }
    img {
           min-width: 300px;
           min-height: 300px;
           max-height: 300px;   
        }
Run Code Online (Sandbox Code Playgroud)

我的问题是,我的图像在宽度上拉伸.我希望是正常的宽度,即使有些图像会遗漏.

   div {
           height: 300px;
           width: 300px; 
           overflow: hidden;
        }
    img {
           height: 300px
           max-width: none;
           min-width: 300px;
        }
Run Code Online (Sandbox Code Playgroud)

我解决了

Al *_*min 32

您只需添加object-fit: cover;. 一个例子可能是这样的 -

img {
    height: 300px
    width: 100%;
    object-fit: cover;
}
Run Code Online (Sandbox Code Playgroud)


Zom*_*ode 10

我会忘记设置最小高度和最大高度.只需将高度设置为300像素,并在div标签上隐藏溢出.这样,无论图像大小如何,它总是保持成比例,永远不会超出div标签的界限.

div { height: 300px; width: 300px; overflow: hidden; }
img { height: 300px; }
Run Code Online (Sandbox Code Playgroud)


Sho*_*omz 6

如果您想以最简单的方式避免拉伸(但保持原始宽度),请将图像作为 div 背景。