Można użyć wypaczone div w tym przypadku. Jedynym problemem jest to, że gdy twoje guziki są wyższe, ze względu na pochylenie, będą one nieco szersze. Może to nie być problemem, jeśli masz do czynienia tylko z 1 lub 2 liniami. Jeśli się bardzo wysoki, co może spowodować, aby zauważalnie nie wyrównać dokładnie:
http://jsfiddle.net/AaP47/3/
.button.triangle:after {
content: "";
background-color: red;
display: block;
height: 100%;
position: absolute;
right: -30px;
top: 0;
width: 60px;
transform: skewX(-10deg);
}
To nie jest też całkowicie skalowalne. Będziesz musiał zdecydować o największej wysokości, którą musisz utrzymać i odpowiednio dostosować. Im wyższy poziom wsparcia, tym szerszy musi być przekrzywiony element div.
Wynik (bez czerwona): http://jsfiddle.net/AaP47/4/
[To może pomóc] (http://stackoverflow.com/questions/11673382/flexible-css-triangles) –
Piękne, oto, co wymyśliłem: http://jsfiddle.net/AaP47/5 /, ale widzę również lepszą odpowiedź poniżej. – JacobTheDev