They do not touch, because you set aside and section as inline-block :
nav, section, aside { display: inline-block; }
With inline-block elements, spaces in HTML become significant.
One solution is to remove the spaces between your aside and section :
http://jsfiddle.net/BzCsj/2/
<aside id="sidebar">asd </aside><section id="main">test </section>
Another solution is to switch from display: inline-block to float: left . I did it here with inline CSS for simplicity: http://jsfiddle.net/BzCsj/4/
source share