Changing Markup of Checkboxes and Labels
-
Hi,
I have one issue with CF7. Generally I love it, I think it’s minimal and flexible that means I have ultimate control over the forms…all except for one thing.
With the markup for labels and checkboxes / radio buttons it stops me doing nicer thigns with CSS. For example I might want to do this…
input[type="checkbox"]:checked + label { background:#f00; }
to change the label when the checkbox is selected. It’s pretty standard UX approach to do that now but difficult / impossible with CF7.
Either a label wraps around the input, and you can’t do the above when the label is the parent, or you manually add a label in the coding but then because a span is wrapped around the <input> then you can’t do it that way. I don’t want to have to use JavaScript so my alternative so far was to edit the markup output in modules/checkbox.php – obviously hacking the plugin is bad.
Do you have any methods aroudn this that I haven’t worked out, is this something you could consider adding? Ideally for me this:
[checkbox your-country "China" "India" "San Marino"]
Would output this:
<span> <input type='checkbox' id='your-country-0' value='China' /> <label for='your-country-0'>China</label> </span>
And so on. That’d be perfect, and it’s how I’ve hacked the file. personally I think this is better markup anyway.
I’d concede if there’s a filter where I could fiddle about with things but I’m not sure if there is.
- The topic ‘Changing Markup of Checkboxes and Labels’ is closed to new replies.