html - 如何让 flex 容器不缩小内容更多的项目?
问题描述
我有一个 flex 容器,它在一行中设置了项目,当它到达视口宽度的末尾时,我希望它溢出-x:滚动。相反,它会缩小所有项目,并添加更多项目以适应屏幕。
我怎样才能让它溢出并仍然在 x 方向滚动,同时防止项目收缩?
.footer-container {
width: 100%;
height: 12rem;
background-color: #fff;
position: fixed;
bottom: 0;
display: flex;
overflow-x: scroll;
padding: 1rem;
animation: slide-up;
animation-duration: 1s;
visibility: hidden;
opacity: 0;
}
.footer-items {
background-color: rgb(214, 218, 219);
width: 17rem;
list-style-type: none;
border-radius: 4px;
margin-right: 1.5rem;
padding: 1rem;
font-size: 1.5rem;
position: relative;
animation: fade-in;
animation-duration: 2s;
display: flex;
}
.side-col {
display: flex;
flex-direction: column;
}
.cart-image {
min-width: 10rem;
height: 6rem;
}
.cart-price {
position: absolute;
top: 50%;
right: 1rem;
transform: translateY(-50%);
font-weight: 600;
}
<footer class="footer">
<ul class="footer-container">
<li class="footer-items">
<div class="side-col">
<p>Bike<p/>
<img class="cart-image" src="bike.png"/>
</div>
<span class="cart-price">$2345</span>
</li>
</ul>
</footer>
这是没有溢出项目的外观https://i.stack.imgur.com/ZUrZS.png
解决方案
如果我没听错,只需添加flex-shrink: 0;
到您不想缩小的项目即可。如果需要其他东西,请告诉我。
你可以看看flex-shrink
这里。
.footer-container {
width: 100%;
height: 12rem;
background-color: #fff;
position: fixed;
bottom: 0;
display: flex;
overflow-x: scroll;
padding: 1rem;
animation: slide-up;
animation-duration: 1s;
}
.footer-items {
background-color: rgb(214, 218, 219);
width: 17rem;
flex-shrink: 0; /*add this property only*/
list-style-type: none;
border-radius: 4px;
margin-right: 1.5rem;
padding: 1rem;
font-size: 1.5rem;
position: relative;
animation: fade-in;
animation-duration: 2s;
display: flex;
}
.side-col {
display: flex;
flex-direction: column;
}
.cart-image {
min-width: 10rem;
height: 6rem;
}
.cart-price {
position: absolute;
top: 50%;
right: 1rem;
transform: translateY(-50%);
font-weight: 600;
}
<footer class="footer">
<ul class="footer-container">
<li class="footer-items">
<div class="side-col">
<p>Bike<p/>
<img class="cart-image" src="bike.png"/>
</div>
<span class="cart-price">$2345</span>
</li>
<li class="footer-items">
<div class="side-col">
<p>Bike<p/>
<img class="cart-image" src="bike.png"/>
</div>
<span class="cart-price">$2345</span>
</li>
<li class="footer-items">
<div class="side-col">
<p>Bike<p/>
<img class="cart-image" src="bike.png"/>
</div>
<span class="cart-price">$2345</span>
</li>
<li class="footer-items">
<div class="side-col">
<p>Bike<p/>
<img class="cart-image" src="bike.png"/>
</div>
<span class="cart-price">$2345</span>
</li>
<li class="footer-items">
<div class="side-col">
<p>Bike<p/>
<img class="cart-image" src="bike.png"/>
</div>
<span class="cart-price">$2345</span>
</li>
</ul>
</footer>
推荐阅读
- r - 在 ggplot2 中的闪避点图上以适当高度绘制中线
- python - 当输入一个选择时,什么也没有发生
- scala - AWS EMR 依赖项
- node.js - 启动项目时创建 React 应用程序错误
- excel - 如何将列表 B 中的项目附加到列表 A,这些项目在列表 B 中但不在列表 A 中?
- java - 如何将 Sikuli JAR 文件添加到 OpenTest 以在 Windows 7 上实现自动化?
- c# - 从字符串中获取参数
- python - Python seaborn - 为什么分割代码时绘图不呈现?
- java - Graal在java中嵌入javascript,如何从java调用列表/数组上的地图?可能吗?
- android - 如何在布局文件中将按钮推到屏幕底部?