在CSS中裁剪图像

Mar*_*rra 8 html css image crop

我已经创建了一个双列网格图像,可以在全景图像中正常工作:链接.但是,我添加了一个抛出布局的肖像图像,所以我希望能够"裁剪"图像,使高度与其他图像相匹配.我尝试使用负边距,但它没有效果:

.portrait-crop
{
    overflow: hidden;
}

img.portrait-crop
{
    margin-bottom: -30px;
}
Run Code Online (Sandbox Code Playgroud)

我不确定我做错了什么.任何帮助,将不胜感激.

作为参考,这是我的代码.

net*_*tux 12

你可以img像这样裁剪:

CSS:

.crop-container {
    width: 200px;
    height: 300px;
    overflow: hidden;
}
.crop-container img {
    margin-top: -100px;
    margin-left: -200px;
}
Run Code Online (Sandbox Code Playgroud)

调整heightwidth所述容器的调整裁剪的尺寸img,并调整为负的量margin-topmargin-left所述上img元件本身来选择裁剪到的图像的一部分.

HTML:

<div class="crop-container">
    <img src="some-img"/>
</div>
Run Code Online (Sandbox Code Playgroud)

工作小提琴

在此输入图像描述

编辑: 具有固定高度行的2列网格的替代解决方案:

CSS:

body {
    margin: 0;
}
div.img {
    float: left;
    width: 49%;
    margin: 0.5%;
    height: 100%;
    background-size: cover!important;
    background-repeat: no-repeat!important;
}
div.row {
    height: 300px;
}
Run Code Online (Sandbox Code Playgroud)

HTML:

<div class='row'>
    <div class='img' style='background: url("some-image");'>&nbsp;</div>
    <div class='img' style='background: url("some-other-image");'>&nbsp;</div>
</div>
<div class='row'>
    <div class='img' style='background: url("foo-image");'>&nbsp;</div>
    <div class='img' style='background: url("bar-image");'>&nbsp;</div>
</div>
Run Code Online (Sandbox Code Playgroud)

工作小提琴


小智 9

你需要给容器增加一些高度,如果没有,它不知道应该显示它内部的含量.

你可以尝试这样的事情.

.portrait-crop{
    display: inline-block;
    height: 215px;
    width: 50%;
    overflow: hidden;
}



.portrait-crop img{
    width: 100%;
}
Run Code Online (Sandbox Code Playgroud)