I'm trying to have a custom checkbox input of sorts and I'm not quite sure where all of this padding is coming from..
The idea is that an image is displayed in place of a checkbox with text, and when it is selected the opacity of the image decreases to show a symbol underneath it, indicating that it is selected.
I boiled it down in this fiddle: http://jsfiddle.net/tx76J/1/
<li>
<input id="1" type="checkbox">
<label for="1">
<figure>
<img src="http://www.moderndandies.com/files/images/Asus-smartphone-android.jpg">
</figure>
</label>
</li>