我已经设置了我的网页,一切顺利,直到我在我的网页上放置了一个中心部分,现在已经将我的右侧部分推到了页面上,其中包含了我很快就会浮动的购物车。中心部分为50%(宽度),右侧部分为15%宽度。 无论我是否更改宽度值,中心部分仍然会影响右侧部分的位置。如果我使用margin-top:-50px,右侧部分从顶部返回到100px的唯一方法就是这样。我所知道的是不满意的。有没有更好的方法来解决这个问题。
section#cart{
padding: 0;
margin: 0;
float: right;
margin-right: 20px;
margin-top: 100px;
width: 15% !important;
border: 1px solid #808284;
height: 200px;
text-transform: uppercase;
}
p#order{
padding: 0;
margin: 0;
background-color: #e86065;
width: 100%;
height: 30px;
text-align: center;
color: #fff;
font-weight: bold;
font-size: 1em;
padding-top: 10px;
text-transform: uppercase;
}
p#estimated{
padding: 0;
margin: 0;
background-color: #d5e16d;
width:100%;
height: 80px;
margin-top: 10px;
text-align: center;
font-size: 0.9em;
text-transform: uppercase;
padding-top: 5px;
color: #000;
font-weight: bold;
}
b#avg{
font-size: 2.5em;
color: #00a4c0;
text-align: center;
}
/*PRODUCTS VIEW- MIDDLE*/
section#products_view{
margin: auto;
width: 50%;
background-color: red;
height: 400px;
margin-top: 110px;
}

<section id='products_view'>
<p>hello<p>
</section>
<section id='cart'>
<p id='order'>My Order</p>
<div id='del'>
<p id='estimated'>Estimated Delivery <br>
<b id='avg'><?php echo $rest_avg ?></b><br>
minutes</p>
<?php // if (isset($_GET[''])) {
?>
</div>
</section>
&#13;
答案 0 :(得分:1)
您可以通过使用flexbox创建三列结构来实现这一目标。我在左栏中使用:before
伪元素。
.container {
display: flex;
align-items: flex-start;
}
.container:before {
content: "";
}
.container:before, #cart {
flex: 1;
}
#cart {
background: grey;
}
#products_view {
flex: 0 0 50%;
height: 150px;
background-color: silver;
}
&#13;
<div class="container">
<section id='products_view'>
hello
</section>
<section id='cart'>
cart
</section>
</div>
&#13;