我必须列出每行,这是为桌面版做工精细的3个项目,但它不是在某些设备上多少响应。该项目在iPad上重叠,所以,当我点击它不会打开的项目链接。而且里面的一些项目的文本较长,所以我觉得即使这是问题
我一直在使用显示器尝试:Flex和格但不成功都去了。
礼品项目
gift = [{ image_url ,Price of the item, Name of the gift }]
giftResults {
margin: 0 -5px;
}
.giftResults:after {
content: "";
display: table;
clear: both;
}
.error {
color: red;
}
.giftResult {
float: left;
width: 25%;
padding: 0 10px;
}
.gift-container {
width: 940px;
max-width: 100%;
min-width: 768px;
margin: 0 auto;
padding: 0 0;
padding-bottom: 3em;
}
.card {
background-color: #e5474b;
display: inline-block;
/* width: 25%; */
height: 50%;
margin-top: 30px;
width: 33.33333%;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
padding: 16px;
text-align: center;
}
.card a {
display: block;
}
.card h2 {
padding-bottom: 25px;
font-size: 20px;
height: 35px;
}
.card:hover {
height: 55%;
width: 39%;
}
@media screen and (max-width: 600px) {
.giftResult {
width: 100%;
display: block;
margin-bottom: 20px;
}
.card {
background-color: #e5474b;
max-width: 400px;
display: block;
height: 50%;
margin-top: 30px;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
padding: 16px;
text-align: center;
width: fit-content;
}
}
<div className="giftResults">
<ul>{ giftDetails }
<li className="giftResult">
<div className="gift-container">
<div className="card">
<img src={props.imageUrl} alt="Item" />
<p>{`$ ${props.price}`}</p>
<a href={props.url} target="_blank" rel="noopener noreferrer">
{props.name}
</a>
</div>
</div>
</li>
</ul>
</div>
如果您无法使用引导看看下面...
/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {...}
/* Small devices (portrait tablets and large phones, 600px and up) */
@media only screen and (min-width: 600px) {
/*Define the new css rules
}
/* Medium devices (landscape tablets, 768px and up) */
@media only screen and (min-width: 768px) {...}
/* Large devices (laptops/desktops, 992px and up) */
@media only screen and (min-width: 992px) {...}
/* Extra large devices (large laptops and desktops, 1200px and up) */
@media only screen and (min-width: 1200px) {...}
我不是很确定你希望发生的事情,可能有多种结果,例如什么:
如果您想要的物品堆放在彼此的顶部,这可能会帮助你(它很基本的,所以你就必须更新,以满足您的需要):
.singleItemContainer {
display: inline-block;
width: 200px;
height: 200px;
background-color: #e6e6e6;
margin: 4px;
}
<div class="itemsContainer">
<div class="singleItemContainer">
<div class="">
Title
</div>
<div class="">
Text
</div>
<div class="">
Image
</div>
</div>
<div class="singleItemContainer">
<div class="">
Title
</div>
<div class="">
Text
</div>
<div class="">
Image
</div>
</div>
<div class="singleItemContainer">
<div class="">
Title
</div>
<div class="">
Text
</div>
<div class="">
Image
</div>
</div>
</div>
如果你需要的产品在尺寸缩小(特别是宽度),然后你会改变宽度为33.33%(中间无保证金,如果你想拥有它们之间的空间,然后你只需要调整的宽度基于多少空间/填充元素你给的项目)。
对于移动尺寸您在使用媒体查询的选项,你可以在这里结合了两种解决方案,并添加媒体查询,逻辑是,例如,从屏幕尺寸320像素,直到600px的元素将在彼此的顶部堆叠, 600px的后元件将具有33.33%的宽度。
要做到这一点,你需要使用一个媒体查询:
.singleItemContainer{
display: inline-block;
width: 200px;
height: 200px;
background-color: #e6e6e6;
margin: 4px;
}
@media only screen and (min-width: 320px) { //This one is probably not needed since the width: 200px; is the default one, but just threw this in here to help understand the example
.singleItemContainer{
width: 200px;
}
}
@media only screen and (min-width: 600px) {
.singleItemContainer{
width: 31.33%; //31 to allow the margins in between
}
}
媒体查询可以在这里添加和调整,以满足您的需求,一切都可以真的。希望这可以帮助!
我甚至删除多余的div
<div className="gift-container">
这是导致该问题,甚至添加媒体查询按照以上的建议