I need to created a responsive triangle using css and html. The triangle will comprise of text and as the text would increase I want the size of triangle to also increase.
Below is the fiddle which I have created.
fiddle
<div class="wrapper">
<div class="top-layer-content banner-notch"></div>
<a class="icon-play fa fa-play-circle-o" rel="lightbox" href="#">
<p> See it in action</p>
</a>
<div>
.wrapper{
position:relative;
}
.banner-notch {
width: 0;
height: 0;
border-bottom: 220px solid #000;
border-left: 220px solid transparent;
filter: alpha(opacity=50);
opacity: 0.6;
color:white;
position:relative;
float:right;
}
.wrapper a{
position:absolute;
top:130px;
right:20px;
color:white;
text-decoration:none;
font-size:25px;
background-position:0 50px;
}
.wrapper .fa-play-circle-o:before{
padding-left:38px;
}
.wrapper p{
font-size:16px;
}
I checked the follow links but it seems the triangle shape is different and the text does not seem to wrap. Text starts overflowing.
Link1 and link2
Thanks, Hardik
You can use pseudo elements and transform:rotate()
to make a triangle that adapts to the size of its content.
FIDDLE
This technique might need a bit of tweaking according to the context you use it in (container with to traingle width ratio) and the design you want when text becomes larger.
HTML:
<div class="wrapper">
<a class="icon-play fa fa-play-circle-o" rel="lightbox" href="#">
<p> See it in action</p>
</a>
</div>
CSS:
.wrapper{
position: relative;
float:right;
clear:right;
overflow:hidden;
z-index:1;
padding:0 1% 0 30%;
margin-right:5%;
}
.fa-play-circle-o{
display:block;
margin:130% 0 2%;
color:#fff;
text-decoration:none;
font-size:18px;
text-align:center;
}
.fa-play-circle-o:before{
font-size:30px;
}
.wrapper:after{
content:"";
position:absolute;
background-color:#666666;
width:500%;
height:100%;
top:0;right:0;
z-index:-1;
-ms-transform: rotate(-45deg);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
-ms-transform-origin:100% 0;
-webkit-transform-origin:100% 0;
transform-origin:100% 0;
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With