修改单选框的样式

1 篇文章 0 订阅

看了好多的资料,有的说radio样式不能修改因为那是默认的,有的说可以。最后还是通过和朋友谈论实现的。

单选框的圆的样式可以修改。其实就是给一个新的样式将原来的覆盖掉,而不是真正的修改了原来的默认样式。

下来上代码

css的

.inputt input[type=radio]+label, inputtt input[type=radio]+label{
                    line-height: 1;
                    position: relative;
                    display: -webkit-box;
                    display: -webkit-flex;
                    display: -ms-flexbox;
                    display: flex;
                    -webkit-box-align: center;
                    -webkit-align-items: center;
                    -ms-flex-align: center;
                    align-items: center;
                    margin-top: -20px;
                }
                .inputt input[type=radio]+label:before, .inputtt input[type=radio]+label:before{
                    line-height: 20px;
                    display: inline-block;
                    width: 13px;
                    height: 13px;
                    margin-right: 8px;
                    content: '';
                    color: #fff;
                    border: 1px solid #dce4e6;
                    background-color: #f3f6f8;
                    border-radius: 3px;
                }
//这块的checked是单选选定的 使用背景图实现
                .inputt input[type=radio]:checked+label:before, .inputtt input[type=radio]:checked+label:before{
                    content:' ';
                    background:rgba(255, 207, 0, 1) url(../../static/images/zheng.png)  no-repeat;
                    background-size:cover;
                }

HTML 的代码

 <div class="inputt">
      <input type="radio" name="picRadio" checked="checked" id="radioOne"/>
      <label for="radioOne">学生</label>
 </div>
 <div class="inputtt">
      <input type="radio" name="picRadio" id="radioTwo"/>
      <label for="radioTwo">非学生</label>
 </div>

切记HTML中 id="radio" 必须写不写的话不能点击,不要问我为什么,我也是实践之后知道的。 

`el-radio` 是 Element UI 库中用于创建单选框的组件,它是基于 Vue.js 的。要修改 `el-radio` 的样式,使其表现得像多选框,通常需要对现有组件进行一定的自定义,因为 Element UI 的 `el-radio` 组件默认是单选的。 以下是一些修改样式的基本步骤: 1. **修改 HTML 结构**:你需要将多个 `el-radio` 组件包裹在一个 `el-checkbox-group` 组件中,这样它们就能够实现多选功能。同时,将 `el-radio` 的 `label` 作为 `el-checkbox` 的 `label` 展示。 2. **自定义 CSS 样式**:通过 CSS 来调整 `el-radio` 的视觉表现,使其看起来更像多选框。例如,可以去掉单选框特有的圆圈,调整对齐方式等。 3. **使用 Vue 的数据绑定**:确保 `el-checkbox-group` 的 `v-model` 绑定到一个 Vue 实例的属性上,以便可以追踪选中的值。 下面是一个示例代码段: ```vue <template> <el-checkbox-group v-model="checkboxValue"> <el-checkbox v-for="item in list" :label="item.value" :key="item.value"> <el-radio :label="item.value">{{ item.label }}</el-radio> </el-checkbox> </el-checkbox-group> </template> <script> export default { data() { return { checkboxValue: [], // 用于存储选中的多选值 list: [ { value: 'option1', label: '选项一' }, { value: 'option2', label: '选项二' }, // 更多选项... ], }; }, }; </script> <style> /* 自定义样式,使得 el-radio 的表现类似多选框 */ .el-checkbox__label { /* 这里可以根据需要调整样式 */ } </style> ``` 在上述代码中,我们通过 `el-checkbox-group` 实现了多选功能,同时使用 `el-checkbox` 包裹了 `el-radio` 来保持单选框的外观。通过 `v-model` 绑定到一个数组 `checkboxValue` 上,这样就可以追踪所有选中的值。 请注意,这只是一个基础的实现方案,具体样式和功能的实现可能会根据你的具体需求有所变化。需要更详细的样式自定义,请根据项目具体需求调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值