单击HTML/CSS时,单选按钮不会更改背景色

单击HTML/CSS时,单选按钮不会更改背景色,html,css,Html,Css,当我点击另一个单选按钮时,我想将单选按钮的背景颜色更改为橙色,它会将颜色从白色更改为橙色,如下所示 代码片段: 输入[type=“radio”]:选中, 输入[type=“radio”]:未(:选中){ 位置:绝对位置; 左:-9999px; } 输入[type=“radio”]:选中+标签, 输入[type=“radio”]:未(:选中)+标签{ 位置:相对位置; 左侧填充:28px; 光标:指针; 线高:20px; 显示:内联块; 颜色:#666; } 输入[type=“radio”]

当我点击另一个单选按钮时,我想将单选按钮的背景颜色更改为橙色,它会将颜色从白色更改为橙色,如下所示

代码片段:


输入[type=“radio”]:选中,
输入[type=“radio”]:未(:选中){
位置:绝对位置;
左:-9999px;
}
输入[type=“radio”]:选中+标签,
输入[type=“radio”]:未(:选中)+标签{
位置:相对位置;
左侧填充:28px;
光标:指针;
线高:20px;
显示:内联块;
颜色:#666;
}
输入[type=“radio”]:选中+标签:在,
输入[type=“radio”]:未(:选中)+标签:之前{
内容:'';
位置:绝对位置;
左:0;
排名:0;
宽度:18px;
高度:18px;
边框:1px实心#ddd;
边界半径:100%;
背景:白色;
}
输入[type=“radio”]:选中+标签:之后,
输入[type=“radio”]:未(:选中)+标签:之后{
内容:'';
宽度:12px;
高度:12px;
背景:橙色;
位置:绝对位置;
顶部:4px;
左:4px;
边界半径:100%;
-webkit过渡:所有0.2秒轻松;
过渡:所有0.2秒缓解;
}
输入[type=“radio”]:未(:选中)+标签:之后{
不透明度:0;
-webkit变换:缩放(0);
变换:比例(0);
}
输入[type=“radio”]:选中+标签:之后{
不透明度:1;
-webkit转换:规模(1);
变换:比例(1);
}
男性
女性

您发布的代码中有两个小问题。修复这些应使按钮按预期工作:

  • 在CSS中,在
    input
    [type=“radio”]
    之间有空格,您希望将其改为
    input[type=“radio”]
    (因此中间没有空格)
  • 在HTML中,标签上必须有
    for
    属性,该属性链接到附带输入的
    id
    。因此,一个标签上的
    for=“male”
    ,另一个标签上的
    for=“female”
    。否则,单击标签不会触发对隐藏输入的单击

  • 我希望这有帮助

    您发布的代码中有两个小问题。修复这些应使按钮按预期工作:

  • 在CSS中,在
    input
    [type=“radio”]
    之间有空格,您希望将其改为
    input[type=“radio”]
    (因此中间没有空格)
  • 在HTML中,标签上必须有
    for
    属性,该属性链接到附带输入的
    id
    。因此,一个标签上的
    for=“male”
    ,另一个标签上的
    for=“female”
    。否则,单击标签不会触发对隐藏输入的单击

  • 我希望这有帮助

    在css选择器中输入后,您需要删除空格,以便浏览器可以在dom中选择正确的元素,还需要为各个单选按钮的标签添加for=”“属性,这样当您单击标签时,它也会更改相应的单选按钮,剩下的代码就完美了

    
    输入[type=“radio”]:选中,
    输入[type=“radio”]:未(:选中){
    位置:绝对位置;
    左:-9999px;
    }
    输入[type=“radio”]:选中+标签,
    输入[type=“radio”]:未(:选中)+标签{
    位置:相对位置;
    左侧填充:28px;
    光标:指针;
    线高:20px;
    显示:内联块;
    颜色:#666;
    }
    输入[type=“radio”]:选中+标签:在,
    输入[type=“radio”]:未(:选中)+标签:之前{
    内容:'';
    位置:绝对位置;
    左:0;
    排名:0;
    宽度:18px;
    高度:18px;
    边框:1px实心#ddd;
    边界半径:100%;
    背景:白色;
    }
    输入[type=“radio”]:选中+标签:之后,
    输入[type=“radio”]:未(:选中)+标签:之后{
    内容:'';
    宽度:12px;
    高度:12px;
    背景:橙色;
    位置:绝对位置;
    顶部:4px;
    左:4px;
    边界半径:100%;
    -webkit过渡:所有0.2秒轻松;
    过渡:所有0.2秒缓解;
    }
    输入[type=“radio”]:未(:选中)+标签:之后{
    不透明度:0;
    -webkit变换:缩放(0);
    变换:比例(0);
    }
    输入[type=“radio”]:选中+标签:之后{
    不透明度:1;
    -webkit转换:规模(1);
    变换:比例(1);
    }
    男性
    女性
    
    在css选择器中输入后,您需要删除空格,以便浏览器可以在dom中选择正确的元素,还需要为各个单选按钮的标签添加for=”“属性,这样当您单击标签时,它也会更改相应的单选按钮,剩下的代码就完美了

    
    输入[type=“radio”]:选中,
    输入[type=“radio”]:未(:选中){
    位置:绝对位置;
    左:-9999px;
    }
    输入[type=“radio”]:选中+标签,
    输入[type=“radio”]:未(:选中)+标签{
    位置:相对位置;
    左侧填充:28px;
    光标:指针;
    线高:20px;
    显示:内联块;
    颜色:#666;
    }
    输入[type=“radio”]:选中+标签:在,
    输入[type=“radio”]:未(:选中)+标签:之前{
    内容:'';
    位置:绝对位置;
    左:0;
    排名:0;
    宽度:18px;
    高度:18px;
    边框:1px实心#ddd;
    边界半径:100%;
    背景:白色;
    }
    输入[type=“radio”]:选中+标签:之后,
    输入[type=“radio”]:未(:选中)+标签:之后{
    内容:'';
    宽度:12px;
    高度:12px;
    背景:橙色;
    位置:绝对位置;
    顶部:4px;
    左:4px;
    边界半径:100%;
    -webkit过渡:所有0.2秒轻松;
    过渡:所有0.2秒缓解;
    }
    输入[type=“radio”]:未(:选中)+标签:之后{
    不透明度:0;
    -webkit变换:缩放(0);
    变换:比例(0);
    }
    输入[type=“radio”]:选中+标签:之后{
    不透明度:1;
    -webkit转换:规模(1);
    变换:比例(1);
    }
    男性
    女性
    
    可能会帮助您:您的