创建形状的最佳选项或方法是什么,如附件链接完整CSS中所示,无论如何都可能吗?
我用CSS平行四边形进行了研究和测试,例如但还没有任何好的成功。
在此处查看形状 - >> http://tinypic.com/r/352ge3b/6
答案 0 :(得分:9)
我有这个东西可以用一个元素来完成 - 它可以完成,我只是觉得它不是这样做的最佳解决方案。
<强> HTML 强>:
<div class='speech-bubble'>Hello!</div>
<强> CSS 强>:
.speech-bubble {
position: relative;
margin: .5em auto;
padding: 1em;
width: 10em; height: 4em;
border-radius: .25em;
transform: rotate(-4deg) rotateY(15deg);
background: #629bdd;
font: 2em/4 Century Gothic, Verdana, sans-serif;
text-align: center;
}
.speech-bubble:before, .speech-bubble:after {
position: absolute;
z-index: -1;
content: '';
}
.speech-bubble:after {
top: 0; right: 0; bottom: 0; left: 0;
border-radius: inherit;
transform: rotate(2deg) translate(.35em, -.15em) scale(1.02);
background: #f4fbfe;
}
.speech-bubble:before {
border: solid 0 transparent;
border-right: solid 3.5em #f4fbfe;
border-bottom: solid .25em #629bdd;
bottom: .25em; left: 1.25em;
width: 0; height: 1em;
transform: rotate(45deg) skewX(75deg);
}
答案 1 :(得分:0)
不完全是,你正在寻找什么,但我正在玩CSS3的视角并旋转并做到这一点:
body {
color: #FFF;
font-family: sans-serif;
}
.outer {
position: relative;
height: 120px;
width: 120px;
margin: 50px;
padding:10px;
perspective:150;
-webkit-perspective:150;
}
.inner {
border-radius: 15px;
padding:50px;
position: absolute;
background-color: #80BFFF;
transform: rotateY(10deg);
-webkit-transform: rotateY(10deg);
box-shadow: -4px -4px 0px #3399FF;
}
.inner:after {
content: ' ';
position: absolute;
width: 0;
height: 0;
left: 20px;
top: 115px;
border: 15px solid;
border-color: #80BFFF transparent transparent #80BFFF;
}
这是我的HTML内容
<div class="outer">
<div class="inner">Yay!</div>
</div>