CSSだけを使って三角形を表示する方法があるようです。 なかなかに目からウロコなテクニックです。
Using borders to produce angled shapes (CSS tutorial)
ポイントは太い枠線の使い方です。 太い幅の、上側と左側のように隣り合う枠線を別の色で塗ります。
.triangular { border-left : solid 20px red ; border-top : solid 20px blue ; }
これを表示すると↓のようになります。
←↑は枠線
左上の部分が斜めになっています。 これを利用するわけです。
.triangular { width : 0px; line-height : 0% ; font-size : 0px ; border-left : solid 20px red ; border-top : solid 20px blue ; }
こんな感じで幅を消すと↓のようになります。
片方の色を背景と同じにすると↓のようになります。
左側・上側・右側を上手く使うと ↓のようになります。
これは次のような指定をしています。
.triangular { width : 0px; line-height : 0% ; font-size : 0px ; border-left : solid 10px white ; border-top : solid 20px gray ; border-right : solid 10px white ; }
「吹き出し」の尖った部分などにも使えそうです。
こんな矢印も作れます。