We should wrap the label around the input, like <code>&lt;label&gt;&lt;input&gt; Foo&lt;/label&gt;</code> (still include the for attribute). It makes for an even bigger click target but it also gives us an element we can style as inline-block to prevent the label text from wrapping under its control.