CSS-trekant - CSS-tricks

Anonim

HTML

Du kan lave dem med en enkelt div. Det er rart at have klasser for hver retningsmulighed.

 

CSS

Ideen er en kasse med nul bredde og højde. Den faktiske bredde og højde på pilen bestemmes af bredden af ​​grænsen. I en pil op er for eksempel den nederste kant farvet, mens venstre og højre er gennemsigtige, hvilket danner trekanten.

.arrow-up ( width: 0; height: 0; border-left: 5px solid transparent; border-right: 5px solid transparent; border-bottom: 5px solid black; ) .arrow-down ( width: 0; height: 0; border-left: 20px solid transparent; border-right: 20px solid transparent; border-top: 20px solid #f00; ) .arrow-right ( width: 0; height: 0; border-top: 60px solid transparent; border-bottom: 60px solid transparent; border-left: 60px solid green; ) .arrow-left ( width: 0; height: 0; border-top: 10px solid transparent; border-bottom: 10px solid transparent; border-right:10px solid blue; )

Demo

Se penneanimationen for at forklare CSS-trekanter af Chris Coyier (@chriscoyier) på CodePen.

Eksempler

Dave Everitt skriver i:

For en ligesidet trekant er det værd at påpege, at højden er 86,6% af bredden, så (kant-venstre-bredde + kant-højre-bredde) * 0,866% = kant-bund-bredde