我一直在尝试为一个项目创建一个响应式的云形CSS,但由于HTTP请求和响应要求,我试图不使用图片、CSS或内置SVG来完成。
所需的形状将是这个(但可以类似-略微变化/改进会很酷):
我发现了这两个问题,但它们似乎不适合我的确切需要:
我已经尝试过(失败了)用border
或box-shadow
创建云朵,需要知道是否可以通过CSS或替代方案内联SVG实现。我也看到Canvas也是一个选项,但我更喜欢远离它,因为它可能会相当复杂。
这是我的差劲的尝试。
body {
background: skyblue;
}
.cloud {
width: 15%;
height: 10vh;
background: white;
position: relative;
margin: 100px 100px;
border-radius: 65px;
box-shadow: black 0 0 10px 10px;
}
.cloud:after {
content: '';
position: absolute;
width: 150px;
height: 150px;
top: -60px;
left: 100px;
border-radius: 75px;
background: white;
}
.cloud:before {
content: '';
position: absolute;
width: 70px;
height: 70px;
background: white;
left: 50px;
top: -30px;
border-radius: 35px;
}
<div class="cloud"></div>
如您所见,我在响应性方面遇到了一些问题,无法准确计算每个元素所需的高度/宽度。
我还尝试将HTML的数量保持到最少,并且更喜欢使用单个div或简短的SVG代码。