问题描述
这是我当前的代码in jsfiddle:
<div class="card-container">
<div class="float-layout">
<div class="card-image">
<img src="https://images.pexels.com/photos/534151/pexels-photo-534151.jpeg?auto=compress&cs=tinysrgb&dpr=3&h=750&w=1260">
<div class="card">
<div class="card-title">Title</div>
<div class="card-desc">
Lorem ipsum dolor sit amet,consectetur adipiscing elit. Fusce ullamcorper
mollis tempus. Mauris eu maximus lectus,eu auctor justo. Aenean porta purus
vel commodo consequat.
</div>
</div>
</div>
</div>
</div>
.float-layout {
padding: 5px 5px;
float: left;
width: 100%;
height: auto;
box-sizing: border-box;
margin: 0;
}
.card-container {
overflow: hidden;
}
.card {
background-color: dodgerblue;
color: black;
height: 100%;
width: 50%;
float: right;
}
.card-title {
font-size: 30px;
text-align: center;
font-weight: bold;
padding-top: 20px;
}
.card-desc {
padding: 10px;
text-align: left;
font-size: 18px;
}
div.card-image img {
width: 50%;
height: auto;
}
/* Phone Devices Query */
@media only screen and (max-width: 37.5em) {
div.card-image img {
width: 100%;
height: auto;
}
.card {
width: 100%;
margin-top: -4px;
}
}
我不确定是否需要用clearfix hack来解决此问题,但是当我调整浏览器窗口时,媒体卡的右侧(包含标题和说明)无法正确缩放图像所在的左侧组。我希望它们都能以相等的高度和尺寸进行响应缩放。
为了更好地了解,我当前的代码如下: https://i.stack.imgur.com/xebaE.png
当我将浏览器窗口调整为任意大小时,我希望它以相同的高度缩放,例如: https://i.stack.imgur.com/IkXok.png
解决方法
有必要吗?
.float-layout {
padding: 5px 5px;
float: left;
width: 100%;
height: auto;
box-sizing: border-box;
margin: 0;
}
.card-container {
overflow: hidden;
}
.card {
background-color: dodgerblue;
color: black;
min-height: 100%; /*replace this it in width: 100%*/
width: 50%;
float: right;
}
.card-title {
font-size: 30px;
text-align: center;
font-weight: bold;
padding-top: 20px;
}
.card-desc {
padding: 10px;
text-align: left;
font-size: 18px;
}
/*add this it*/
.card-image {
display: flex;
}
/*-------------*/
div.card-image img {
width: 50%;
height: auto;
}
/* Phone Devices Query */
@media only screen and (max-width: 37.5em) {
div.card-image img {
width: 100%;
height: auto;
}
/*add this it*/
.card-image {
flex-direction: column;
}
/*----------------------*/
.card {
width: 100%;
margin-top: -4px;
}
}
<div class="card-container">
<div class="float-layout">
<div class="card-image">
<img src="https://images.pexels.com/photos/534151/pexels-photo-534151.jpeg?auto=compress&cs=tinysrgb&dpr=3&h=750&w=1260">
<div class="card">
<div class="card-title">Title</div>
<div class="card-desc">
Lorem ipsum dolor sit amet,consectetur adipiscing elit. Fusce ullamcorper
mollis tempus. Mauris eu maximus lectus,eu auctor justo. Aenean porta purus
vel commodo consequat.
</div>
</div>
</div>
</div>
</div>