CSS 实战!画一个素描杯子


用纯CSS画一个类似于素描的杯子


完成图如下:

杯子完成图

想直接看源码,可以上我的github上面去看,下面开始具体说实现步骤。
首先,用到了哪些知识:

  • box-shadow
  • CSS径向渐变,多层渐变
  • 绝对定位z-index
  • border-radius

知识点需要掌握的并不多,要求也不高,下面说一下我的实现思路。


第零步,肯定是分析图,然后写html了。杯子图组成并不复杂,就四个部分,杯子的把手,杯托,杯子的身体,杯子的径口(原谅我词穷,差不多就是这个意思)。
就可以差不多写出这样的html

<div id="cup_header"></div>
<div id="cup_body"></div>
<div id="cup_footer"></div>
<div id="cup_ear"></div>

第一步,决定布局,我一开始想的并不是固定像素,而是百分比,可以拉伸的,杯子可以跟着变大缩小的那种。后来想了一下,没必要,就固定大小算了。然后把杯子用absolute定位,绝对居中在屏幕中间,用margin进行微调,运用z-index,遮罩,差不多就成了这个样子:

第一步

杯子的模型就差不多勾勒出来了!
第二步,用border-radius让它看起来真的是个杯子,然后就变成了下图:

第二步

差不多就是个杯子了,然后我们要开始上色,这是个细致活,而且要模仿类似于素描那种,有阴影,有变化。
下面我介绍一下box-shadowCSS径向渐变,多层渐变
两者相比,大家应该对box-shadow更加熟悉一些。那我就先说一下box-shadow吧。
其实我之前的文章就有提到过box-shadow,它可以无限叠加,有insetinset的意思就是说,可以向盒子内部投影,所以,我杯子的边缘描边都是用的box-shadowinset实现的。
然后是CSS径向渐变,多层渐变

background-image: radial-gradient(farthest-corner ellipse at 40% 40%, #ffffff 20%, #DFDFDF 70%, #eeeeee 80%);

上述代码就是他的实现,具体功能参数,网上一大堆,这里就不说了。通过一系列的微调,组合。就完成杯子了。


杯子完成图
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、属性选择器:id选择器 # 通过id 来选择类名选择器 . 通过类名来选择属性选择器 ...
    Yuann阅读 5,616评论 0 7
  • 1、垂直对齐 如果你用CSS,则你会有困惑:我该怎么垂直对齐容器中的元素?现在,利用CSS3的Transform,...
    kiddings阅读 8,419评论 0 11
  • 因为近期项目没有压力,主要工作就是一些涉及功能增删相关的界面的小工作,修修补补,搞个图标之类,设计师小伙伴们都懂的...
    泱泱悲秋阅读 11,139评论 1 27
  • http://www.jellythink.com/archives/924 FROM ---> JION----...
    0_Eric阅读 2,860评论 0 0
  • 我不太会总结,所以以后的学习记录,我尽量把学的内容压缩出来,希望在这段时间的坚持中可以锻炼我的总结能力,以后望大家...
    爱昔阅读 1,274评论 0 0

友情链接更多精彩内容