如何制作对角线div

时间:2015-12-05 11:09:35

标签: css twitter-bootstrap css3 css-shapes

我正在尝试制作对角线div,所以我可以创建这个形状: How to make diagonal div 我使用bootstrap网格,我已经为形状制作了三个div容器。

它将由3个部分组成,其中2个是对角线,1个是直的。 我做了3部分。但我不知道如何使它对角线。

example in codepen

HTML:

    <body ng-app="appt" ng-controller="AppController" >
    <div class="row test-row">
        <div class="col-lg-4 test-outbox">
            <div class="test-inbox test-inbox-center col-lg-10 col-lg-offset-1">
                <span class="test-s"></span>
                <span class="test-s"></span>
                <div class="test-d"></div>
            </div>
        </div>
        <div class="col-lg-4 test-outbox">
            <div class="test-inbox test-inbox-center col-lg-10 col-lg-offset-1">
            </div>
        </div>
        <div class="col-lg-4 test-outbox">
            <div class="test-inbox test-inbox-center col-lg-10 col-lg-offset-1"></div>
        </div>
    </div>
</body>

css:

    .test-row{
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    position: fixed;
    top: 100px;
}

.test-outbox{
    border:1px black solid;
    height:350px;
}

.test-inbox-center {
    height: 300px;         /*your login box height*/
    position: absolute;
    top: 50%;
    margin-top: -150px;    /*height/2*/
    border:1px black solid;
    border-radius: 3px;
    background-color:white;
    padding: 0;
}
.test-s:nth-child(even){
    height: 100px;
    width: 76px;
    top: 150px;
    position: absolute;
    border:1px black solid;
    right: 0;
}
.test-s:nth-child(odd){
    height: 100px;
    width: 76px;
    top: 150px;
    position: absolute;
    border:1px black solid;
    left: 0;
}
.test-d{

}

1 个答案:

答案 0 :(得分:2)

请检查此fiddle

这是代码

HTML

<div class="mainOuterDiv">
        <div class="middDiv">
            <div class="innerLeft"></div>
            <div class="innerRight"></div>
            <div class="textDiv"></div>
        </div>
    </div>

CSS

.mainOuterDiv{
    width:200px;
    height:200px;
    border:solid 2px #0CF;
    overflow:hidden;
    background:#FFF;
}
.middDiv{
    width:70%;
    height:30px;
    border:solid 2px #0CF;
    margin:0px auto;
    position:relative;
    margin-top:50%;
}
.innerLeft{
    position: absolute;
    left: -32px;
    top: -13px;
    border: solid 2px #0CF;
    width:20%;
    height:100%;    
    z-index: 1;
    transform: skew(180deg,215deg);
}
.innerRight{
    position:absolute;
    border:solid 2px #0CF;
    right:-32px;
    top: -13px;
    width:20%;
    height:100%;
    z-index: 1;
    transform: skew(180deg,145deg);
}
.textDiv{
    background:#fff;
    z-index:9999;
    width:100%;
    height:100%;
    position:absolute;
}

由于