Для закругленных углов вы можете использовать border-radius
(с префиксами вендора и без них).
Если вы действительно хотите такой же внешний вид, как на изображении вопроса,Вы можете использовать два контейнера и применить CSS- transform (с и без префиксов вендоров) + overflow:hidden
, чтобы получить желаемый вид.
Откат имеетдля использования в старых браузерах, которые не поддерживают эти методы, с использованием прозрачного фонового изображения.
HTML:
<div class="outer-clipped-box">
<div class="inner-clipped-box">
<div class="content-clipped-box">
Content here.
</div>
</div>
</div>
CSS (префикс конкретного поставщика для поддержки кроссбраузера, в данном случае игнорируется Opera и IE):
.outer-clipped-box {
height: 200px;
width: 200px;
overflow: hidden;
}
.inner-clipped-box {
height: 250px;
width: 250px;
background: #ddf;
-moz-transform-origin: 140px 84px;
-moz-transform: rotate(45deg);
-webkit-transform-origin: 140px 84px;
-webkit-transform: rotate(45deg);
transform-origin: 140px 84px;
transform: rotate(45deg);
}
/* Undo rotation, to get the content in the right position*/
.content-clipped-box {
height: 150px;
width: 150px;
-moz-transform-origin: center center;
-moz-transform: rotate(-45deg) translate(0,70px);
-webkit-transform-origin: center center;
-webkit-transform: rotate(-45deg) translate(0,70px);
transform-origin: center center;
transform: rotate(-45deg) translate(0,70px);
}