html - 防止图像被用于计算网格行高
问题描述
我的 CSS 网格中行的高度由网格项决定。如何防止在确定行高时使用网格中的图像?相反,我希望图像缩小以适合行内(它们的高度由其他网格项确定)。
我已经尝试min-height: 0
按照为什么不弹性项目缩小超过内容大小?以及max-height: 100%
图像,但无济于事。
没有图像的网格:
带有图像的网格:
#hotel-editor {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 0.3fr 1.5fr 1fr 0.3fr;
grid-gap: 21px;
min-height: 0;
min-width: 0;
}
.hotelimage {
grid-column: 1 / 2;
grid-row: 1 / 3;
height: 100%;
min-height: 0;
min-width: 0;
}
.uploadedimg {
max-height: 100%;
max-width: 100%;
min-height: 0;
min-width: 0;
}
.hotel-info {
display: contents;
}
<div id="hotel-editor">
<div class="hotelimage" style="background: transparent;">
<img src="https://upload.wikimedia.org/wikipedia/commons/6/62/Paracas_National_Reserve%2C_Ica%2C_Peru-3April2011.jpg" class="uploadedimg">
</div>
<div class="hotel-info">
<input type="text" name="name" placeholder="Name">
<br>
<textarea name="description" placeholder="Description"></textarea>
</div>
<input type="submit" name="submit" class="submitbtn" value="Update">
</div>
JsFiddle:https ://jsfiddle.net/ntyj76he/
解决方案
直到你没有定义包含图像的 div 的高度,你的图像类的高度:100% 不会改变结果。
你应该给你的 .hotel-editor 一个高度或最大高度。这个对我有用:
#hotel-editor {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 0.3fr 1.5fr 1fr 0.3fr;
grid-gap: 21px;
min-height: 0;
min-width: 0;
height:30px;
//or
max-height:30px;
}
推荐阅读
- reactjs - 将活动幻灯片设置为 swiper/react 与反应状态
- javascript - 我的验证不正确,请看一下
- bash - #/bin/sh 和 # 有什么区别!/bin/sh?
- java - Elasticsearch Java-Play Framework - 在查询 BoolQueryBuilder 中写一个查询
- mysql - 使用 MySQL 查询执行逻辑操作
- android - 片段 - 在创建片段之前取消片段事务
- python - 如何仅从购买中删除热门商品并保留其他商品?
- r - Shiny Leaflet - 在不知道其 ID 的情况下删除特定标记或形状
- postgresql - PostgreSQL BDR 与复制槽有关的问题
- node.js - `http://localhost` 上的安全 Cookie