好的,所以我正在寻找独立于容器的真正响应百分比图像大小调整。换句话说,我想相对于它自己的大小调整图像的大小。
原因是我可以动态调整页面上所有图像的大小以适应更小的屏幕尺寸。
现在因为它被用于 CMS 解决方案,并且用户被假定为 HTML 非精通,我们不能用任何东西包装图像,我们不能向它们添加类/ID 等。
我想更改页面上的所有图像,除了一些我可以应用类或 ID 的图像。
我目前正在使用:
img {
-webkit-transform: scale(0.625) translate(-29%, 0); /* Saf3.1+, Chrome */
-moz-transform: scale(0.625) translate(-29%, 0); /* FF3.5+ */
-ms-transform: scale(0.625) translate(-29%, 0); /* IE9 */
-o-transform: scale(0.625) translate(-29%, 0); /* Opera 10.5+ */
transform: scale(0.625) translate(-29%, 0);
/* IE6–IE9 */
/*filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.9999619230641713, M12=-0.008726535498373935, M21=0.008726535498373935, M22=0.9999619230641713,SizingMethod='auto expand');*/
}
.noScale, .userFeed img, .twitter img, .subLogo {
-webkit-transform: scale(1) translate(0,0); /* Saf3.1+, Chrome */
-moz-transform: scale(1) translate(0,0); /* FF3.5+ */
-ms-transform: scale(1) translate(0,0); /* IE9 */
-o-transform: scale(1) translate(0,0); /* Opera 10.5+ */
transform: scale(1) translate(0,0);
/* IE6–IE9 */
/*filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.9999619230641713, M12=-0.008726535498373935, M21=0.008726535498373935, M22=0.9999619230641713,SizingMethod='auto expand');*/
}
这主要是有效的,但是所有图像仍然被其他所有图像视为其原始大小,因此它有效地在其周围填充到其原始大小。这在尺寸减少 62% 的情况下不是一个大问题,但随着减少的幅度越来越小,这将成为一个更大的问题。同样显然需要多种媒体查询实现来处理越来越小的屏幕尺寸。
翻译在那里,所以图像的左边缘仍然是图像的左边缘。
我会考虑 JS/JQuery 解决方案,但我真的想要一种与现代浏览器兼容的 CSS 方式。所以ie9+。
在您提出以下任何建议之前,我的测试不起作用,但我很高兴被证明是错误的:
max-height/max-width(在某些浏览器中它们仍然根据容器大小)缩放(不完全支持,如果是的话会是完美的)高度/宽度(容器大小不是图像)Div 包装器(对我正在尝试的东西没有好处)去做)
如果我完全厚实并且完全错误地接近这个,没问题,请告诉我。任何帮助将不胜感激。
谢谢
斯蒂芬