看看下面的图片:
蓝色方框是div。现在我要做的是实现一种2.5D功能:
我希望灰色阴影有些3D-ish。起初我想把盒子阴影值分配给“Y”轴,如下所示:
"box-shadow: -5px -5px 10px" + value.tallness + "#888"
但结果是上图。
关于如何仅在一侧制作阴影的任何想法,就像来自某个地方的光源一样?
EXTRA - 移动“光源”怎么样?
答案 0 :(得分:20)
答案 1 :(得分:4)
如何更简单地移动阴影:
$(document).on('mousemove', function(e) {
var elm = $("#test"),
x = ~Math.round((e.pageX - elm[0].offsetLeft - 150) / 30),
y = ~Math.round((e.pageY - elm[0].offsetTop - 150) / 30),
z = 10+Math.abs(x)+Math.abs(y),
cssVal = x+'px '+y+'px '+z+'px 10px #525252';
elm.css({'-webkit-box-shadow' : cssVal, 'box-shadow' : cssVal });
});
答案 2 :(得分:1)
更新的答案是使用像Shine.js(http://bigspaceship.github.io/shine.js/)这样的库来处理这个问题。