2015-12-22 81 views
0

在下面的代码中,我不明白为什么我看不到任何第二个输入元素。在第一个我使用for属性和在第二个我试图将输入元素内的标签描述在这里: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/label输入类型复选框的属性

有人可以告诉我什么是问题?

http://jsfiddle.net/v4Dde/102/

<input type='checkbox' id="borderCheckBox"/> 
<label for="borderCheckBox"></label> 

<label class="labelClass"> 
<input type='checkbox' class="checkboxClass"/> 
</label> 

input[type=checkbox] { 
    display:none; 
} 

input[type=checkbox] + label { 
    background: black; 
    height: 16px; 
    width: 16px; 
    display:inline-block; 
    padding: 0 0 0 0px; 
} 

input[type=checkbox]:checked + label { 
    background: red; 
    height: 16px; 
    width: 16px; 
    display:inline-block; 
    padding: 0 0 0 0px; 
} 

.checkboxClass + .labelClass { 
    background: black; 
    height: 16px; 
    width: 16px; 
    display:inline-block; 
    padding: 0 0 0 0px; 
    //border-right: 1px solid blue; 
} 

.checkboxClass:checked + .labelClass { 
    background: red; 
    height: 16px; 
    width: 16px; 
    display:inline-block; 
    padding: 0 0 0 0px; 
} 
+0

你能描述一下你想做什么吗?你在哪里得到一个错误? –

+0

我想为输入类型复选框(红色和黑色)设置2种不同的背景颜色。当我运行这个例子时,我只能看到第一个复选框,但第二个复选框不可见。我不明白为什么我不能看到第二个输入元素。 – shiran

+0

如果你用第一种方法得到结果,那么你为什么会选择第二种? –

回答

0

这是一个从none

input[type=checkbox] { 
    display:none; 
} 

尝试改变任何东西取决于你想要什么类型的blockinline等。

+0

但它不会将输入组件的背景色更改为第二个输入组件的红色或黑色。 – shiran