How to properly mark up a checkbox and customizing its design taking in consideration that the result is accessible and easy to use.

Read the article on Accessibility Matters