2013-10-07 47 views
1

我知道如何使一箱的影子跑下来一个元素然而是有可能有它向下延伸80%的元素,而不是元素的整个高度的?CSS3 - Verticle斜角80%的外箱阴影

而且如何让阴影角度出来(这是东西IM与大多数挣扎)

enter image description here

+1

否 - 不是直接。您必须覆盖它或使用':before' /':after'之后。 –

+0

我想我将不得不使用:前/:一束旋转之类的东西后,想通ID问我花试着弄清楚几个小时之前,宁可不使用图像 – user934902

+0

你应该只定位背后一个元素与80%的高度 –

回答

1

像这样的事情?

jsFiddle here

还有一堆的,你可以做到这一点的方式。我刚才设置的影子,而重叠的三角形。

enter image description here

这里是不模糊的影子替代.. http://jsfiddle.net/bHEaZ/1/

HTML - 很简单

<div></div> 

CSS

div { 
    width: 100px; 
    height: 200px; 
    position: relative; 
    border: 1px solid black; 
    box-shadow: 20px -10px 30px black; 
    margin: 40px; 
} 

div:after { 
    position: absolute; 
    left: 102px; 
    top: 100px; 
    content: "\A"; 
    width: 0; 
    height: 0; 
    border-bottom: 90px solid white; 
    border-right: 50px solid white; 
    border-top: 90px solid transparent; 
} 
+1

准确,显然需要一点点技巧,但生病的工作,出:P非常感谢 – user934902

+1

@JMcFee我没有使用CSS变换/旋转效果,但我仍然很明显只好用':after',这只有通过IE8 + –

+0

烨多数民众赞成罚款的支持,我不是担心它生病只是试图把它降低到一个影子一路下跌股利的人,不幸的是使用IE7和下 – user934902

0

你在找这样的事吗?
http://fiddle.jshell.net/sijav/2S7Pv/1/
有一堆的方法可以做到这一点,但我的方法是:
使用另一个DIV和半径边境它,然后把它实际股利背后...

.origdiv{ 
    width:200px; 
    height:200px; 
    background: blue; 
    z-index:10; 
} 
.shadowthis{ 
    left:150px; 
    top:150px; 
    position:absolute; 
    box-shadow: 10px -10px 5px #888888; 
    border-bottom-right-radius:25%; 
    z-index:9; 
} 

希望它可以帮助

+1

雅你很可能得到它,但作为@JoshC正在使用:之前/:之后是一个更清洁,随着浏览器的发展,我不应该有很多冲突 – user934902