Har*_*dik 7 javascript css css3 responsive-design css-shapes
我需要使用css和html创建一个响应三角形.三角形将包含文本,随着文本的增加,我希望三角形的大小也增加.
下面是我创建的小提琴.
<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>
Run Code Online (Sandbox Code Playgroud)
.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;
}
Run Code Online (Sandbox Code Playgroud)
我检查了以下链接,但似乎三角形的形状不同,文字似乎没有换行.文字开始溢出.
谢谢,哈迪克
您可以使用伪元素并transform:rotate()
制作一个适应其内容大小的三角形。
此技术可能需要根据您使用它的上下文(具有三角形宽度比的容器)以及文本变大时您想要的设计进行一些调整。
HTML:
<div class="wrapper">
<a class="icon-play fa fa-play-circle-o" rel="lightbox" href="#">
<p> See it in action</p>
</a>
</div>
Run Code Online (Sandbox Code Playgroud)
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;
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
992 次 |
最近记录: |