偶然间看到了 SegmentFault 上的一篇文章,感受这个 Hello Kitty 画的还不错,心血来潮也用 CSS3 画了个 Hello Kitty,如今在这里记录一下详细的绘制过程。想要源码、素材、在线演示的同窗能够直接拉到最下面。css

咱们先看下原图:html

结构分解

从上图能够看出,Hello Kitty 由脸蛋、耳朵、红色蝴蝶结、眼睛、鼻子和六根胡须构成,因此 DOM 结构也相对简单:css3

开始绘制

能够利用 Photoshop 的参考线精确的计算出元素的 left、top、width、height、border-width 以及四个角的水平 radius 值和垂直 radius 值,有误差的地方再微调一下基本就能够了。git

脸蛋

.hello-kitty-div .face {

left: 107px;

top: 77px;

width: 747px;

height: 566px;

border-top: 35px solid black;

border-bottom: 31px solid black;

border-left: 29px solid black;

border-right: 30px solid black;

border-top-left-radius: 355px 333px;

border-top-right-radius: 355px 333px;

border-bottom-left-radius: 370px 285px;

border-bottom-right-radius: 330px 255px;

background-color: white;

z-index: 100;

}

左耳

.hello-kitty-div .left-ear {

left: 112px;

top: 61px;

width: 250px;

height: 250px;

border-top: 33px solid black;

border-bottom: 30px solid black;

border-left: 28px solid black;

border-right: 30px solid black;

border-top-left-radius: 138px 100px;

border-bottom-left-radius: 334px 310px;

background-color: white;

transform: rotate(23deg);

z-index: 99;

}

让耳朵和脸蛋连为一体:github

.hello-kitty-div .left-ear-clean {

left: 146px;

top: 96px;

width: 250px;

height: 250px;

border-top-left-radius: 138px 100px;

border-bottom-left-radius: 360px 310px;

background-color: white;

transform: rotate(23deg);

z-index: 101;

}

再稍加点缀,美化一下:segmentfault

.hello-kitty-div .left-ear-beautify {

left: 149px;

top: 221px;

width: 60px;

height: 30px;

border-top-left-radius: 20px 15px;

border-top-right-radius: 25px 15px;

border-bottom-left-radius: 20px 15px;

border-bottom-right-radius: 25px 15px;

background-color: black;

transform: rotate(-52deg);

z-index: 102;

}

右耳

.hello-kitty-div .right-ear {

left: 600px;

top: 50px;

width: 250px;

height: 250px;

border-top: 33px solid black;

border-bottom: 28px solid black;

border-left: 30px solid black;

border-right: 29px solid black;

border-top-left-radius: 220px 170px;

border-top-right-radius: 90px 57px;

border-bottom-right-radius: 334px 245px;

background-color: white;

transform: rotate(-21deg);

z-index: 99;

}

.hello-kitty-div .right-ear-clean {

left: 700px;

top: 105px;

width: 120px;

height: 120px;

background-color: white;

z-index: 101;

}

右耳画的比较粗糙,由于立刻就要画蝴蝶结了。ide

蝴蝶结

蝴蝶结分为两个外边,三个圆。外边是整个绘画过程当中最难画的地方,用矩形调整 radius 参数很难作到没有误差,由于它不像是更圆润的矩形,而像是更圆润的三角形。在这里,咱们把它分红四块,各个外边各两块,在块内绘制好对应的区域,再利用 overflow: hidden; 来隐藏多余的部分。而后是三个圆,相对简单。3d

代码量实在太多,就不贴出来了,大概思路就这样子。code

眼睛,鼻子

眼睛和鼻子相对简单,就不贴代码了。orm

胡须

由于胡须是弯弯的,因此每根胡须须要两个元素来实现,咱们就用 :before 和 :after 吧。

某一根胡须的代码:

.hello-kitty-div .left-moustache-1:before {

content: '\20';

display: block;

position: absolute;

left: 20px;

top: 420px;

width: 100px;

height: 24px;

border-top-left-radius: 80px 30px;

border-bottom-left-radius: 20px;

background-color: black;

transform: rotate(-5deg);

z-index: 101;

}

.hello-kitty-div .left-moustache-1:after {

content: '\20';

display: block;

position: absolute;

left: 131px;

top: 418px;

width: 60px;

height: 24px;

border-top-right-radius: 100px 30px;

border-bottom-right-radius: 20px;

background-color: black;

transform: rotate(2deg);

z-index: 101;

}

如今,整个 Hello Kitty 就画完了,有没有以为很可爱?~~(ฅ>ω

最后

Kitty用HTML和css咋做,使用 CSS3 绘制 Hello Kitty相关推荐

  1. Kitty用HTML和css咋做,使用CSS3代码绘制可爱的Hello Kitty猫

    感觉这个 Hello Kitty 画的还不错,心血来潮也用 CSS3 画了个 Hello Kitty,现在在这里记录一下详细的绘制过程.想要源码.素材.在线演示的同学可以直接拉到最下面.我们先看下原图 ...

  2. html css制作404页面,CSS3绘制404页面

    标题有点噱了... 最近在做一个交通有关的项目, 想做一个类似标志牌的404, 所以就有了这个. 只用的CSS3中的旋转, 效果如下 上代码: Error .circle { width: 200px ...

  3. css百度图片布局,css3绘制百度的小度熊

    前几天看到一篇文章是写用css3绘制腾讯企鹅的.趁着今天有空,就用css3来写一个百度的小度熊.话不多说,开始上码. 爆照 先来一张呆萌小度熊的成果照. 在绘制小度熊之前,首先要对小度熊布局上进行一个 ...

  4. python画蝴蝶结_【二次元的CSS】—— 用 DIV + CSS3 画Hello Kitty(详解步骤)

    原本自己也想画Hello Kitty,正巧看到一位外国友人Lauren McConachie(她的个人网站: http://lorenai.com.)也用相同的方法画了. 且细节相当到位.在此我也分享 ...

  5. 气泡提示效果css.html,用纯CSS3绘制高端简约的气泡提示框

    用纯css绘制一个简单的气泡提示框,对于长期关注课课家CSS3绘图教程的朋友来说是件轻而易举的事,但是程序员最不喜欢做的事情是重复造轮子,加上之前小编分享的几个气泡要么过于复杂,通用性不强,要么需要鼠 ...

  6. html css 画五角星,纯 CSS3 绘制图形(心形、五角星、六边形等)

    这篇文章给大家带来的是纯 CSS 绘制五角星.六角形.五边形.六边形.心形等等.我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象 ...

  7. [css] 让网页的字体变得清晰,变细用CSS怎么做?

    [css] 让网页的字体变得清晰,变细用CSS怎么做? 全家桶:-webkit-font-smoothing: antialiased -moz-osx-font-smoothing: graysca ...

  8. [css] 如何做图片预览,如何放大一个图片?

    [css] 如何做图片预览,如何放大一个图片? 图片不跨域的话用 canvas 来 drawImage 放大裁剪也可以. 个人简介 我是歌谣,欢迎和大家一起交流前后端知识.放弃很容易, 但坚持一定很酷 ...

  9. [css] 除了可以用js跟踪用户信息外,如果不用js,使用纯css怎么做呢?

    [css] 除了可以用js跟踪用户信息外,如果不用js,使用纯css怎么做呢? 可以利用 css 的伪类 :hover :active :focus 之类的监听用户行为,然后给指定的url 发送请求. ...

最新文章

  1. Bullsh*t,System. currentTimeMillis大胆用起来,我说的!
  2. 高效计算基础与线性分类器
  3. 3DSlicer4:模块管理(二)场景视图、体数据、体绘制
  4. SP703 SERVICE - Mobile Service[DP]
  5. Spring Bean的生命周期(非常详细)
  6. linux开源软件_为什么要使用Linux和开源软件?
  7. 一个人越来越有潜力的3个迹象
  8. 数据库习题(填空题三)
  9. 菜鸟教程:零基础HTML入门
  10. mybatis sql 按照特定的字段顺序排序,按照拼音首字母排序
  11. Android6.0源码下载
  12. 高等数学:微分、积分物理以及几何意义
  13. 利用BeautifulSoup爬取豆瓣高分电影排行榜
  14. Moneybookers支付方式开发
  15. 模拟赛 Jams倒酒
  16. 【分布式版本控制系统】GIT 托管网站 客户端
  17. Roson的Qt之旅#97 Qt编译报错-Could not determine which “make“ command to run
  18. 开源视频插帧软件DAIN使用教程
  19. 视频教程-19全新mysql教程零基础入门实战精讲mysql视频DBA数据库视频教程SQL教程-MySQL
  20. HDOJ--1000A + B Problem

热门文章

  1. GM8913型DC平衡双向控制器LVTTL转FPD-LINK
  2. php sec-websocket-accept,javascript – Websocket握手Sec-WebSocket-Accept标...
  3. 基于C#制作一个桌面宠物
  4. 综合治理GIS方案(综治)
  5. 微软2011年4月最有价值专家(MVP)名单 51CTO十七位用户当选
  6. 2019年中国幼儿园数量、幼儿园入园率、幼儿园政策及幼儿园市场规模发展趋势分析[图]
  7. 质数乘积(大数乘法+埃氏筛法)
  8. 亵渎小说介绍_亵渎行不通
  9. 基于camunda如何实现会签:camunda会签流程配置与原理解析
  10. stm32点亮LED的有关寄存器配置CRL、CRH、IDR、ODR