如何用css创建一个倾斜的边框

时间:2014-05-06 11:04:08

标签: html css html5 css3 transform

我想切割边框,如下图所示:

enter image description here

如果可能的话,它们被切除的区域应该是透明的。

这是我目前的代码:

.main {
    height: 50px;
    background-color: #d6d6d6;
}

footer {
    height: 93px;
    background-color: #ff6138;
    position: relative;
}

.footer-info {
    position: absolute;
    bottom: 27px;
    left: 33px;
}

footer span {
    color: #ffff9d;
    text-transform: uppercase;
    font-weight: 300;
    letter-spacing: 0.05em;
    font-size: 1.1875em;
}

footer .tel {
    color: #fff;
    font-weight: 400;
    font-size: 1em;
    margin-left: 24px;
}

body {
    background-color: #ff9200;
}

链接到代码http://jsfiddle.net/NpX23/

3 个答案:

答案 0 :(得分:5)

使用:before /:after和rotate

添加位置:相对于.mainfooter

.main:after, footer:before {
    content: " ";
    width: 100%;
    height: 40px;
    background: inherit;
    position: absolute;
    -webkit-transform: rotate(-1deg);
    -moz-transform: rotate(-1deg);
    -o-transform: rotate(-1deg);
    -ms-transform: rotate(-1deg);
    transform: rotate(-1deg);
    z-index: -1;
}

.main:after {
    bottom: -20px;
}

footer:before {
    top: -20px;
}

工作: http://jsfiddle.net/NpX23/8/

答案 1 :(得分:2)

以下是使用:before属性而不使用rotate的内容:

JSFiddle

footer::before{
    content:' ';
    position:absolute;
    top:-25px;
    left:0;
    width: 0;
    height: 10px;
    border-top: 25px solid transparent;
    border-right: 1800px solid #ff9200;
}

我将overflow-x:hidden;放入body

答案 2 :(得分:0)

用于 Rotate property css3,就像这样

.main {
    height: 50px;
    background-color: #d6d6d6;
    -webkit-transform: rotate(-3deg);
    -moz-transform: rotate(-3deg);
    -o-transform: rotate(-3deg);
    -ms-transform: rotate(-3deg);
    transform: rotate(-3deg);
}

footer {
    height: 93px;
    background-color: #ff6138;
    position: relative;
    margin-top:20px;
        -webkit-transform: rotate(-3deg);
    -moz-transform: rotate(-3deg);
    -o-transform: rotate(-3deg);
    -ms-transform: rotate(-3deg);
    transform: rotate(-3deg);
}

<强> Demo