css 使选项 select 并排显示
css make options select appear next to each other in rows
我在 woocommerce 商店的商店页面上制作了一个颜色选择器。
在后端,客户可以做出变化并为每个变化设置颜色。
在正面顾客可以选择这个颜色然后加入购物车。
现在有效的是 display:inline-block 使选项彼此相邻出现。
但是,当产品有多种颜色变化时,该列的选项就太宽了。
所以我希望选项适合列宽,如果已满则从下一行开始。
但是,这似乎不起作用。我尝试在父项 (select) 上显示网格和显示 flex,使用 float:left 等等,但到目前为止没有成功。
我想要 4 个并排的项目,然后是另一排的 4 个项目。
HTML:
<select size="8" id="kleuren">
<option class="colorpicker-pick" style="border-color: rgb(255, 255, 255); background-image: url(); background-repeat: no-repeat; background-position: left center;"></option>
<option value="956" style="background-color: rgb(26, 178, 216)"></option>
<option value="960" style="background-color: rgb(221, 11, 11)"></option>
<option value="961" style="background-color: rgb(255, 255, 255)"></option>
<option value="962" style="background-color: rgb(211, 211, 211)"></option>
<option value="963" style="background-color: rgb(129, 215, 66)"></option>
<option value="964" style="background-color: rgb(221, 145, 31)"></option>
<option value="965" style="background-color: rgb(0, 0, 0)"></option>
<option value="966" style="background-color: rgb(237, 237, 7)"></option>
</select>
有人吗?
很遗憾,您不能以这种方式修改 select。
您可以使用复选框以另一种方式进行操作,如下所示:
CSS
.grid-container{
display:grid !important;
width:100%;
border:none;
overflow:hidden;
grid-template-rows: 1fr 1fr 1fr 1fr;
grid-template-columns: 1fr 1fr 1fr 1fr;
}
HTML
<div class="grid-container">
<label for="color1">
Option 1
<input type="checkbox" id="option-1" name="inputName[]">
</label>
<label for="color2">
Option 2
<input type="checkbox" id="option-2" name="inputName[]">
</label>
<label for="color3">
Option 3
<input type="checkbox" id="option-3" name="inputName[]">
</label>
<label for="color4">
Option 4
<input type="checkbox" id="option-4" name="inputName[]">
</label>
我在 woocommerce 商店的商店页面上制作了一个颜色选择器。 在后端,客户可以做出变化并为每个变化设置颜色。 在正面顾客可以选择这个颜色然后加入购物车。
现在有效的是 display:inline-block 使选项彼此相邻出现。 但是,当产品有多种颜色变化时,该列的选项就太宽了。 所以我希望选项适合列宽,如果已满则从下一行开始。 但是,这似乎不起作用。我尝试在父项 (select) 上显示网格和显示 flex,使用 float:left 等等,但到目前为止没有成功。
我想要 4 个并排的项目,然后是另一排的 4 个项目。
HTML:
<select size="8" id="kleuren">
<option class="colorpicker-pick" style="border-color: rgb(255, 255, 255); background-image: url(); background-repeat: no-repeat; background-position: left center;"></option>
<option value="956" style="background-color: rgb(26, 178, 216)"></option>
<option value="960" style="background-color: rgb(221, 11, 11)"></option>
<option value="961" style="background-color: rgb(255, 255, 255)"></option>
<option value="962" style="background-color: rgb(211, 211, 211)"></option>
<option value="963" style="background-color: rgb(129, 215, 66)"></option>
<option value="964" style="background-color: rgb(221, 145, 31)"></option>
<option value="965" style="background-color: rgb(0, 0, 0)"></option>
<option value="966" style="background-color: rgb(237, 237, 7)"></option>
</select>
有人吗?
很遗憾,您不能以这种方式修改 select。
您可以使用复选框以另一种方式进行操作,如下所示:
CSS
.grid-container{
display:grid !important;
width:100%;
border:none;
overflow:hidden;
grid-template-rows: 1fr 1fr 1fr 1fr;
grid-template-columns: 1fr 1fr 1fr 1fr;
}
HTML
<div class="grid-container">
<label for="color1">
Option 1
<input type="checkbox" id="option-1" name="inputName[]">
</label>
<label for="color2">
Option 2
<input type="checkbox" id="option-2" name="inputName[]">
</label>
<label for="color3">
Option 3
<input type="checkbox" id="option-3" name="inputName[]">
</label>
<label for="color4">
Option 4
<input type="checkbox" id="option-4" name="inputName[]">
</label>