作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我似乎无法在 flex-box 元素中正确实现响应式图像。如果图像是 flex-box 元素之一,则效果很好 ( Jsfiddle )
.parent {
display: flex;
width: 100%;
}
.parent input {
flex: 1;
}
.parent input:focus + img {
display: none;
}
<div class="parent">
<img src="https://png.icons8.com/metro/40/000000/graduation-cap.png">
<input />
<img src="https://png.icons8.com/metro/40/00000/user.png">
</div>
场景 1:图像拉伸(stretch)扭曲纵横比 (Jsfiddle)
.parent {
display: flex;
width: 100%;
height: 40px;
}
.parent input {
flex: 1;
}
.parent input:focus + div {
display: none;
}
.parent img {
height: 100%;
max-height: 100%;
width: auto;
}
.parent .funny {
display: flex;
}
<div class="parent">
<img src="https://png.icons8.com/metro/40/000000/graduation-cap.png">
<input />
<div class="funny">
<img src="https://lh3.googleusercontent.com/-OX10v8tUiCY/AAAAAAAAAAI/AAAAAAAADE8/QcezYUDPvxU/s96-c/photo.jpg">
</div>
</div>
场景 2:图像留下空白空间 ( Jsfiddle )
.parent {
display: flex;
width: 100%;
height: 40px;
background: red;
}
.parent input {
flex: 1;
}
.parent input:focus + div {
display: none;
}
.parent img {
height: 100%;
max-height: 100%;
width: auto;
}
.parent .funny {
display: flex;
}
<div class="parent">
<img src="https://png.icons8.com/metro/40/000000/graduation-cap.png">
<input />
<div class="funny">
<div>
<img src="https://lh3.googleusercontent.com/-OX10v8tUiCY/AAAAAAAAAAI/AAAAAAAADE8/QcezYUDPvxU/s96-c/photo.jpg">
</div>
</div>
</div>
场景 3:布局很好,直到输入获得焦点,然后一切都中断了:Jsfiddle
这发生在 IE 11、Chrome(版本 67.0.3396.87(官方构建)(64 位))中,但尚未在 Firefox 和 Edge 中测试。
最佳答案
下面的代码对我来说似乎工作正常。我刚刚在您的第一个示例中设置了图像的高度和宽度。
.parent {
display: flex;
width: 100%;
}
.parent input {
flex: 1;
}
.parent input:focus + img {
display: none;
}
img {
height: 40px;
width: auto;
}
<div class="parent">
<img src="https://png.icons8.com/metro/40/000000/graduation-cap.png">
<input />
<img src="https://lh3.googleusercontent.com/-OX10v8tUiCY/AAAAAAAAAAI/AAAAAAAADE8/QcezYUDPvxU/s96-c/photo.jpg">
</div>
对于您分享的第二个示例,再次将 img 高度设置为 40px 而不是将其设置为 100% 似乎对我有用。检查fiddle
与方案 3 相同。检查 fiddle
关于html - Flex-box 中具有正确宽高比的响应图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51001326/
我将我的用户图片作为文件保存在我的硬盘上。(不在数据库中)。 我将获取此 *.jpg 文件的高度和宽度,该怎么做? (背景:我必须计算高度和宽度之间的比率以使其达到指定的高度和宽度而不拉伸(stret
我是一名优秀的程序员,十分优秀!