2013-04-05 114 views
0

我想勾選複選框。我能夠使用以下HTML標記和CSS來完成此操作。造型單選按鈕

但問題是我有一點不同的HTML標記,我不能改變。 無法更改的原因是它是由插件生成的,所以我需要編輯核心文件來改變這一點,我不想這樣做。

那麼如何添加相同的樣式到我下面的HTML中。

工作HTML:

<input type="radio" id="radio"> 
<label for="radio"></label> 

所需的HTML:

<li> 
    <input id="option-11" type="radio" value="11"> 
    <label for="option-11">Option one</label> 
</li> 

正如你可以看到,雖然標記是相似的,但在標籤上面用來顯示文本。

CSS:

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

input[type="radio"] + label{ 
    background:url('http://refundfx.com.au/uploads/image/checkbox_empty.png'); 
    padding:0; 
    display: inline-block; 
    width:20px; 
    height:20px; 
} 

input[type="radio"]:checked + label { 
    background:url('http://refundfx.com.au/uploads/image/checkbox_full.png'); 
} 

演示: http://jsfiddle.net/JPSLm/

+0

究竟是什麼問題呢?有點不清楚。 – 2013-04-05 07:54:41

+0

你可以看到,CSS隱藏實際的無線電輸入,並使用標籤來設計無線電盒,我有不同的HTML,我不能改變(如你所見),我怎樣才能添加樣式到該HTML獲得相同的樣式無線電輸入。 – user1251698 2013-04-05 07:59:08

+0

我不知道問題出在哪裏...... http://jsfiddle.net/tvVQT/ – mnme 2013-04-05 08:01:49

回答

-1

它與你的代碼,我不知道問題出在哪裏。

http://jsfiddle.net/sGqsL/

HTML

<li> 
    <input type="radio" id="radio" name="radiogroup"/> 
    <label for="radio"></label> 
</li> 

和CSS

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

input[type="radio"] + label{ 
    background:url('http://refundfx.com.au/uploads/image/checkbox_empty.png'); 
    padding:0; 
    display: inline-block; 
    width:20px; 
    height:20px; 
} 

input[type="radio"]:checked + label { 
    background:url('http://refundfx.com.au/uploads/image/checkbox_full.png'); 
} 

li { 
    list-style-type: none; 
} 
+1

爲什麼你添加了作爲答案,如果它與原始代碼一起工作? – Morpheus 2013-04-05 08:50:46