如何使用CSS3實現一個3D泡沫圖形
要實現一個逼真的泡沫,涉及到比較複雜的光學/物理學知識。
我們這裡先簡化下問題,實現一個相對簡單而足夠實用的泡沫元素。
我們可以把基礎的泡沫元素應用在很多場景中,比如水景、泡咖啡、啤酒甚至火焰特效中。
泡沫首先是一個圓形元素
12345 | .bubble { width : 200px ; height : 200px ; border-radius: 50% ; } |
上面圓角邊框半徑等於50%,定義了一個圓形元素的樣式。
新增3D陰影
泡沫應該是有色彩梯度的,這可以通過線性漸變(linear-gradient)和徑向漸變(radial-gradient)屬性來實現。
也可以通過框陰影(box-shadow)來實現,本例使用內外box-shadow來實現:
1234567891011121314 | box-shadow: inset -30px -30px 75px rgba( 0 , 0 , 0 , . 2 ), /* 淡灰色漸變背景,光源位於左上方 */ inset 0px 0px 5px rgba( 0 , 0 , 0 , . 5
|