在css3中倾斜成形的边界Div

时间:2013-08-24 06:47:31

标签: html css css3 border transform

我正在尝试用css3设计一个镶边形状div ,就像一个有边框的正方形,但是从右边倾斜到一定程度......

这是我想要设计的: -

http://i.imgur.com/6GVzltP.png

我试图通过 css3转换来扭曲div,但它也会扭曲地图以及div中的内容并使div的两侧倾斜

我的演示: - http://jsfiddle.net/znsmG/

HTML代码: -

<div class="map_canvas">
    <div class="map_area" data-showcontrols="true" data-lat="-34.397" data-lng="150.644" data-zoom="7"></div>           
</div>

定制CSS: -

.map_canvas { border: 10px solid #d2d828; position:relative; }
.map_area { height: 400px; width:100%; }

任何实现此目的的方法或方法?

1 个答案:

答案 0 :(得分:5)

刚从 css3转型 ...

创造了这种美

我实现的技巧是将根容器倾斜到10deg并将父容器倾斜到-10deg,并将溢出隐藏到外部容器中,反之亦然......

工作演示: - http://jsfiddle.net/znsmG/3/

<强>的CSS: -

.map_contain {
    border-left: 10px solid #D2D828;
    overflow: hidden;
}
.map_canvas {
    border-bottom: 10px solid #D2D828;
    border-right: 10px solid #D2D828;
    border-top: 10px solid #D2D828;
    margin: 0 40px 0 -40px;
    overflow: hidden;
    position: relative;
    transform: skewX(10deg);
    -moz-transform: skewX(10deg);
    -webkit-transform: skewX(10deg);
}
.map_area {
    height: 400px;
    margin: 0 -35px 0 40px;
    transform: skewX(-10deg);
    -moz-transform: skewX(-10deg);
    -webkit-transform: skewX(-10deg);
}

...谢谢