JSFiddle - React, Tailwind, and code Playground
by Nik Shevchenko
HTML
<div class="main">Ex. #1</div>
<div class="triangle-example-1">Test CSS: AFTER TRIANGLE</div>
<div class="main">Ex. #2</div>
<div class="triangle-example-2-main">Test CSS: DIV TRIANGLE</div>
<div class="triangle-example-2-triangle"></div>
<div class="main">Ex. #3</div>
<div class="triangle-example-3-main">Test CSS: DIV TRIANGLE</div>
<div class="triangle-example-3-triangle"></div>
<div class="main">Ex. #4</div>
<div class="arrow_box">Test CSS: DIV TRIANGLE</div>
CSS
.main {
text-align: center;
font-size: 40px;
font-weight: 700;
margin-top: 50px;
margin-bottom: 10px;
}
.triangle-example-1 {
height: 50px;
background-color: #e8e8e8;
text-align: center;
padding-top: 10px;
position: relative;
}
.triangle-example-1::after{
content: '';
position: absolute;
left: 48%;
top: 100%;
width: 0;
height: 0;
border-left: 20px solid transparent;
border-right: 20px solid transparent;
border-top: 20px solid #e8e8e8;
clear: both;
}
.triangle-example-2-main {
width: 100%;
height: 100px;
text-align: center;
padding-top: 20px;
background: #f9f9f9;
margin: 0;
}
.triangle-example-2-triangle {
width: 0;
height: 0;
margin-left: 48%;
border-style: solid;
border-width: 30px 25px 0 25px;
border-color: #f9f9f9 transparent transparent transparent;
}
.triangle-example-3-main {
width: 100%;
height: 100px;
background: #f9f9f9;
margin: 0;
text-align: center;
padding-top: 20px;
}
.triangle-example-3-triangle {
width: 40px;
height: 0;
padding-left: 51%;
padding-top: 5%;
overflow: hidden;
}
.triangle-example-3-triangle:after {
content: "";
display: block;
width: 0;
height: 0;
margin-left:-30px;
margin-top:-50px;
border-left: 30px solid transparent;
border-right: 30px solid transparent;
border-top: 30px solid #f9f9f9;
}
.arrow_box {
position: relative;
background: #f0f0f0;
text-align: center;
padding-top: 10px;
height: 100px;
}
.arrow_box:after, .arrow_box:before {
top: 100%;
left: 50%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
.arrow_box:after {
border-color: rgba(136, 183, 213, 0);
border-top-color: #f0f0f0;
border-width: 30px;
margin-left: -30px;
}
.arrow_box:before {
border-color: rgba(194, 225, 245, 0);
border-top-color: #f0f0f0;
border-width: 36px;
margin-left: -36px;
}