Cic*_*chy 9 css firefox transform scale css-transitions
我在最新的Firefox浏览器版本34(系统:Windows 7,屏幕宽度:1600px)中遇到问题.在将鼠标悬停在其上后,我使用缩放图像(在某些容器中)生效.我正在使用transform:scale(1.1) with transition:transform 0.3s ease-in-out.但是当我将鼠标悬停在图像上,并在图像放大之后......它会产生一些奇怪的1px变换.一些渲染浏览器的bug,但我希望现有的一些修复它.请帮忙!
最重要的CSS定义和HTML代码的一部分:
figure {
display: block;
overflow: hidden;
position: relative;
backface-visibility: hidden;
}
figure img {
width: 100%;
transform: scale(1);
transition: transform 0.3s ease-in-out;
}
figure:hover img {
transform: scale(1.1);
}Run Code Online (Sandbox Code Playgroud)
<figure>
<img class="img-responsive" src="http://lorempixel.com/600/400/fashion/7">
</figure>Run Code Online (Sandbox Code Playgroud)
带有bug的示例在线:http://templates.silversite.pl/test/jumpingimg/
我也看到有人可以解决它,但我不知道如何,例如http://demo.qodeinteractive.com/bridge/上的"我们最近的工作"框
Kos*_*aft 11
我的项目遇到了类似的问题.所有图像都是position: absolute;,变换看起来像那样:
figure img{
transform: translate( -50%, 50%) scale(1);
position: absolute;
top: 50%;
left: 50%;
}
figure img:hover{
transform: translate( -50%, 50%) scale(1.1);
}
Run Code Online (Sandbox Code Playgroud)
我替换每一个scale,scale3d这解决了我的问题.最终样式看起来像这样:
figure img{
transform: translate( -50%, 50%) scale3d(1, 1, 1);
position: absolute;
top: 50%;
left: 50%;
}
figure img:hover{
transform: translate( -50%, 50%) scale3d(1.1, 1.1, 1);
}
Run Code Online (Sandbox Code Playgroud)
希望能解决你的问题
在您提供的链接http://demo.qodeinteractive.com/bridge/ 上,如果您真的去这里:http : //demo.qodeinteractive.com/bridge/portfolio/gallery-style-condensed/two-columns- grid/,您可以看到,一旦查看开发工具,它们会在左侧/右侧应用“1px”的边距
.projects_holder.hover_text.no_space article .image img {
margin: 0 1px;
}
Run Code Online (Sandbox Code Playgroud)
如果您禁用该样式,当您将鼠标悬停在图像上时,您会看到图像按照您的描述移动。
因此,您的图像 CSS 应该是:
figure img {
width: 100%;
transform: scale(1);
transition: transform 0.3s ease-in-out;
display: block; /* (or inline-block) */
margin: 0 1px;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10055 次 |
| 最近记录: |