我正在编写一个数量选择器按钮,希望它能够响应。也就是说,我希望减号和加号只包含图标所需的宽度,中间的输入为最大宽度。
我想知道如何使用scss来处理这个问题。
超文本:
<div class="quantity-select-container">
<div class="btn btn-minus">
<span class="icon icon-minus">
</span>
</div>
<input value="1" type="number" min="1" max="100" step="1" pattern="[0-9]*" class="form-control product-detail-quantity-select">
<div class="btn btn-plus">
<span class="icon icon-plus"></span>
</div>
</div>
SCSS:
.quantity-select-container {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr;
gap: 0 0;
border: 1px solid black;
grid-auto-flow: row;
grid-template-areas: "minus input plus";
.btn-minus {
grid-area: minus;
}
input {
text-align: center;
grid-area: input;
padding: 2px;
width: 100%;
}
.btn-plus {
grid-area: plus;
}
.btn-minus,
.btn-plus {
cursor: pointer;
display: flex;
justify-content: center;
}
}
grid-template-columns: 45px auto 45px;
可以解决这个问题,但效果不是很好,因为在窄屏幕上,按钮会重叠,从而使输入变得模糊,因此它适用于大屏幕,而在小屏幕上则不行
1条答案
按热度按时间1yjd4xko1#
min-content
与clamp
是您最好的朋友,当谈到适合一些框的最小宽度可能在小屏幕上,同时保持一个合理的宽度时,在屏幕上有足够的空间为了更好地说明这个组合的作用,请查看下面的gif,并注意填充是如何由于
clamp
而变化的:更进一步,您还可以对字体或图标本身的大小应用clamp,同时仍然保持网格布局上的最小内容