Im having a big headcache with a header design:

Here the demo: http://jsfiddle.net/uGECm/
The idea is to have the gray label that ‘wrap’ the element; However, the label’s height is unknow (it can vary by its content) – my problem is that the 2 pseudo-elements made like triangles get a wrong position if the labels change the size, this becose they’re position is relative.
Any idea?
ps: im looking for a no-js and no-images solution.
Here’s a fork with some further CSS formatting: http://jsfiddle.net/bqXeJ/
It’s worth taking a look at a style guide like the one I wrote here, and also, if you use Lea Verou’s prefixfree.js, you can skip writing declarations for each browser vendor.