如何停止Edge(浏览器)拉伸图像



我有一个图片标签,看起来像这个

.flexD {
display: flex;
margin: 0 auto;
width: 90%;
}
.flexP {
display: flex;
}
.imgInP {
margin: auto 0;
}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title></title>
</head>
<body>
<div class="flexD">
<picture class="flexP">
<!-- I do have some source tags-->
<img src="http://placehold.it/100x80"> </picture>
<p> content content content content content content content content content content content content content content content content content content</p>
</div>
<!-- I am using this code--> 
<div class="flexD">
<picture class="flexP">
<!-- I do have some source tags-->
<img class = "imgInP" src="http://placehold.it/100x80"> </picture>
<p> content content content content content content content content content content content content content content content content content content</p>
</div>
</body>
</html>

在Chrome上,代码可以工作,看起来像下面的图片,但在Edge上,我的图片像上面一样拉伸。这是否意味着我的保证金:auto 0;没有在Edge上工作?我该怎么解决这个问题?

如果我对您的需求的理解是正确的,请查看:

若您认为image正在被拉伸,那个么您可以使用与content:url相同的图像,并分配heightwidth,以便它在浏览器之间保持一致。

.flexD {
display: flex;
margin: 0 auto;
width: 90%;
}
.flexP {
display: flex;
}
.imgInP {
content: url(http://placekitten.com/301/301);
width: 100px;
height: 80px;
}
<body>
<div class="flexD">
<picture class="flexP">
<!-- I do have some source tags-->
<img class="imgInP">
</picture>
<p> content content content content content content content content content content content content content content content content content content</p>
</div>
<!-- I am using this code-->
<div class="flexD">
<picture class="flexP">
<!-- I do have some source tags-->
<img class="imgInP"> </picture>
<p> content content content content content content content content content content content content content content content content content content</p>
</div>
</body>

您可以使用css的object fit属性,它可以停止拉伸图像。

.imgInP{
object-fit: cover;
}

最新更新