The reason this is clever is because CSS wasn't intended to be used to draw shapes. You would use HTML5's canvas element to do that. Instead this shows how you can hack a simple border property to make a DOM element look like a triangle.
<svg width='20' height='10'>
<path fill='#D94948' d='M0,20h20L10,0'/>
</svg>
Should be supported pretty much everywhere canvas is, but without the need of scripting to actually get a triangle.You declare a symbol in the defs section of an SVG image and you can instantiate it with use. E.g.
<svg>
<defs>
<symbol id='foo'>
<circle r='5' cx='10' cy='3'/>
</symbol>
</defs>
<use xlink:href='#foo' x='2' y='5'/>
<use xlink:href='#foo' x='10' y='10' fill='red' stroke='blue'/>
</svg>
(does not actually work, because namespaces are missing and the symbol likely is missing things like a viewbox, but just to get the general idea across) <svg height=10 width=20>
<polygon fill=red stroke-width=0
points="0,10 20,10 10,0" />
</svg>
And you can put it in your CSS using a data URI: .triangle {
background: url("data:image/svg+xml;charset=utf-8,<svg height='10' width='20' xmlns='http://www.w3.org/2000/svg'><polygon fill='red' stroke-width='0' points='0,10 20,10 10,0' /></svg>") no-repeat left center;
width: 20px;
height: 10px;
} <img src='triangle.svg'>
really that much harder than <div class='triangle'></div>?