【发布时间】:2012-11-27 10:20:58
【问题描述】:
我有一张图片已放置在 div 中。 div 的宽度为 600,高度可变。
我希望我的图像位于 div 的顶部。如果我将宽度设为 590,问题是图像在设计方面太高了,并且在页面上看起来太占优势(因为它的比例大约是 4:3 等)。
所以我想将图像 590 x 200。如果我使用...
.img {
width: 590px;
max-height: 200px;
}
...然后图像完全按照我想要的方式位于 div 内。但是,照片本身被压扁并变形为 590 x 200。如何确保图像恰好在该尺寸范围内裁剪并且没有变形?
我无法访问 html,因此也无法在其周围添加包装器...这仅需要通过编辑 CSS 类 .img 来完成。
编辑 - 安迪是对的,负边距是我可以让它发挥作用的唯一方法。谢谢安迪。
【问题讨论】:
-
在没有容器的情况下最接近的是使用负边距顶部和边距右边
-
可以把图片设置为背景吗?如果是这样,那么我可能有一个解决方案。
-
鉴于您的限制,我认为您唯一的镜头是
clipproperty。不幸的是,元素必须绝对定位。 -
是的,剪辑看起来不错,但我无法使图像绝对定位。不过还是谢谢。
-
我假设您也不能添加 javascript(不修改 DOM)?如果您可以将图像变成带背景的 div(通过 :after{:content),那么有 CSS 属性可以做到这一点。除了从 javascript 注入 CSS 之外,我仍然不知道如何将图像 URL 提供给背景。
标签: css image crop aspect-ratio