div内的响应式垂直中心元素 [英] Responsive vertical center elements inside div
问题描述
我需要垂直对齐 div 容器内的元素.元素如下图所示.使用此代码,我能够很好地覆盖左侧的大图片,但文本和小图片仍然可以做它想要的.我需要避免使用 flexbox,因为我还需要支持 IE8 或至少 IE9.我已经尝试过几种解决方案,也包括表格或绝对位置,但可能我总是做错了什么......
谢谢你帮我解决这个问题:)
HTML
<div class="地址"><h4>abc</h4><span>acbd<br>efgh</span><span>轮胎<br>asdsad
cxzcasd</span><img src="img/ccc-map.png" alt="map-ccc">
<div class="map"><img src="img/ccc-g-map.png" alt="google-map">
</节>
SCSS
.contact {边框:1.5px 实心 $grey;宽度:100%;.地址{向左飘浮;宽度:40%;填充:2%;h4{字体大小:130%;}跨度 {字体大小:100%;}图像{宽度:45%;高度:自动;}}.地图 {浮动:对;宽度:60%;填充:1%;图像{宽度:100%;高度:自动;}}}.contact::after {内容: " ";显示:表;清楚:两者;}
您正在混合像 h4
这样的块级元素和像 img
这样的内联元素,并期望它们对齐正确,可能,但有一个更简单的解决方案,添加第三个单元格:
.contact{显示:表;宽度:100%;边框折叠:折叠;边框:2px 实心#ddd;}.联系>div{显示:表格单元格;垂直对齐:中间;填充:8px;}.联系图片{垂直对齐:中间;宽度:100%;}.pic{宽度:100px;}.地图{宽度:60%;}
<!-- 改为创建三个单元格!--><div class="地址"><h4>abc</h4><跨度>acbd<br>efgh</span><跨度>轮胎
asdsad
cxzcasd</span>
<div class="图片"><img src="//placehold.it/100x100/fac" alt="map-ccc">
<div class="map"><img src="//placehold.it/500x300/fac" alt="google-map">
</section>