Knu*_*nut 3 css firefox internet-explorer image flexbox
我正在尝试使用flexbox在我的内容流中并排放置两个图像.在Chrome/Safari中,它可以正确缩放图像,但在Firefox/IE中,不会考虑宽高比,并且图像会失真.内容流的总宽度取决于浏览器的宽度.当窗口变窄时,需要重新调整图像.
这就是它在Chrome/Safari(WebKit)中的外观:
宽高比受到尊重http://pluto.justdied.com/w2box/data/chrome.PNG
虽然这是它在Firefox/Internet Explorer中的样子:
图像延伸http://pluto.justdied.com/w2box/data/exhibit.PNG
这个2列视图有很长的图像.
HTML标记:
<div class="grid">
<img src="../images/mille_bornes_02.jpg">
<img src="../images/mille_bornes_08.jpg">
</div>
Run Code Online (Sandbox Code Playgroud)
CSS如下:
.grid {
z-index: 1;
margin: 0px 0px 16.5px;
position: relative;
flex-direction: row;
width: 100%;
height: 100%;
display: flex;
padding: 0;
border: 0;
}
.grid img {
position: relative;
display: block;
margin-left: 16.5px;
height: 100%;
width: 100%;
}
.grid > img:first-child {
margin-left: 0px;
}
Run Code Online (Sandbox Code Playgroud)
我试图调整大小,但我仍然在Firefox/IE中出现某种形式的失真.有关如何修复它的任何想法?我希望使用flexbox来避免使用JavaScript来强制它.
两个源图像共享相同的高度和宽度.
所有反馈和帮助将不胜感激!
谢谢!
我没有太多关注你的具体情况,但我在试图解决类似的问题时遇到了你的问题,其中Flex容器内的图像在Firefox上有偏差.
我的解决方案是添加object-fit: contain到图像并修复FF中的纵横比.
如果有帮助,迟到总比没有好!
将您的img包装在一个块级元素中。(我只是有这个完全相同的问题)
<div class="grid">
<div><img src="../images/mille_bornes_02.jpg"></div>
<div><img src="../images/mille_bornes_08.jpg"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
并且您的CSS应该定位到<div>非<img />