【发布时间】:2021-07-16 15:06:19
【问题描述】:
我正在尝试创建一个多选单选按钮,它看起来像我的表单的常规按钮。
我有以下困难:
1) 当按钮被激活时,我不能在它周围放置盒子阴影。这是我尝试过的:
.biggerRadioButton input:checked + span {
box-shadow: 0 0 20px #9bcd2c;
}
2) 按钮内的内容不居中,这是我试过的:
.textWrapper {
display: flex;
align-items: center;
justify-content: center;
}
3) 选中按钮时,内容以横轴为中心,但不在横轴上。为什么只有激活时才居中?
完整示例: https://jsfiddle.net/7u3b29r5/6/
我的html
<div className={styles.biggerRadioButton}>
<label>
<input type="radio" name={name} />
<span>
<div className={styles.textWrapper}>
<div className={styles.box1}>title centered</div>
<div className={styles.box2}>long text centered</div>
</div>
</span>
</label>
</div>;
另外,有没有其他方法可以处理此类表单输入以达到相同的效果,即单选按钮的替代方法?
【问题讨论】:
-
您的标签有
overflow:auto;阻止box-shadow可见。您的内容不是水平居中的,因为.box1和.box2有flex: 1和flex: 2,这意味着它们正在逐渐占据所有空间,如果它占据了整个空间,你就无法证明某些东西是合理的。
标签: javascript css forms radio-button multi-select