If you set box-sizing: border-box [1], you don't need to worry about the latter.
If only that worked on all the browsers I was required to support...
Even without border box you can achieve that quite easily (since the conceptual border-box 100% is the default for blocks); you simply need more wrapper elements.