是否有可能只用css,图像里面缩进

时间:2013-09-19 09:22:13

标签: css indentation

Indent like this

是否可以仅使用CSS执行此操作? 我想了很久但没有想到我的想法

3 个答案:

答案 0 :(得分:3)

是的,但前提是您的背景颜色为纯色:

div {
    width: 310px;
    height: 41px;
    background: gray;
    border-radius: 5px;
    position: relative;
}
div:after {
    content: '';
    display: block;
    width: 60px;
    height: 60px;
    background: white;
    border-radius: 50%;
    position: absolute;
    right: -30px;
    bottom: -30px;
}

同时检查DEMO

编辑:添加了内部阴影:http://jsfiddle.net/LinkinTED/ThZrf/1/

答案 1 :(得分:2)

是。你可以创建一个相对定位的div并给它一个高数字的边界半径(你必须试验找到它成为一个圆圈的位置)指定它的宽度和高度,将它的z-index设置为高于它坐在顶部的东西,并将它放在底角。像

这样的东西
#circle{
    border-radius: 300px;
    z-index: 2;
    height: 40px;
    width:40px;
    left: 350px;
    top: 20px;
    background-colour:white;
}

这些只是样本值。您需要自己的才能正确执行此操作。如果你想变得更加花哨,我想你可以指定应用半径的角落。所以你可以(我认为)在CSS中创建精确的形状,而不是我的方法可以做的圆(但是你将圆圈定位为仅切出角落)。

编辑:正如所指出的,如果你想要一个阴影,你可以玩css box-shadow属性(注意IE9下面不支持)。

答案 2 :(得分:1)

在不知道您的特定用例的情况下,您可以考虑Lea Verou的这种技巧: http://lea.verou.me/2011/03/beveled-corners-negative-border-radius-with-css3-gradients/