CSS3制作心形头像
1.功能需求:
最近有一个基于微信开发的Mobile Web项目,是一个活动页面。功能需求:用户使用微信扫描二维码,然后授权使用微信登录,然后读取用户的昵称和头像,然后显示在一个饼图上面。头像需要有一个心形套住,大家看到很多页面,都是使用圆形套住,比如新版的手机QQ联系人,截图如下:
微信登录如图,拿的微信开放平台的美丽说的截图:

2.实现代码
<!DOCTYPE html><html> <head> <title>css3制作心形头像</title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <style type="text/css"> #headimage{ position: absolute; top: 50%; left: 50%; } /*心形头像*/ .heart{ float:left; width:90px;height:54px;position:relative; } /* after 伪元素在元素之前添加内容*/ .heart .before{ content:" "; border-radius:160px 160px 0 0;/* 正方形的内切圆的半径等于正方形边长的一半 */ -moz-border-radius: 160px 160px 0 0; -ms-border-radius: 160px 160px 0 0; -o-border-radius: 160px 160px 0 0; -webkit-border-radius: 160px 160px 0 0; width:60px; height:100px;/* 长方形 */ -moz-transform: rotate(-45deg);/* 逆时针旋转45°*/ -ms-transform: rotate(-45deg); -o-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); position:absolute; left:10px; overflow: hidden; } .before > div { width: 120px; height: 120px; background-size: 120px; position: absolute; bottom: 0px; left: -100%; -webkit-transform: rotate(45deg); -webkit-transform-origin: bottom center; } /* after 伪元素在元素之后添加内容*/ .heart .after{ content:" "; width:60px; height:100px; border-radius:160px 160px 0 0; -moz-border-radius:160px 160px 0 0; -ms-border-radius:160px 160px 0 0; -o-border-radius: 160px 160px 0 0; -webkit-border-radius: 160px 160px 0 0; -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); -webkit-transform: rotate(45deg); position:absolute; left:38px;top:0px; overflow: hidden; } .after > div { width: 120px; height: 120px; background-size: 120px; position: absolute; bottom: 0px; right: -100%; -webkit-transform: rotate(-45deg); -webkit-transform-origin:bottom center; } body{ width:400px; height:400px; margin: 0 auto; } </style> </head> <body> <h3>原始图片:</h3> <div style="text-align:center;"> <img src="images/1.jpg" alt="用户头像"/> </div> <h3>心形头像:</h3> <div id="headimage"> <!-- <img id="headimgurl" style="width:80px;height:80px;border-radius: 40px;"/>--> <!--css3制作心形头像--> <div class="heart"> <div class="before"> <div class="userphoto"><img src="images/1.jpg" alt="用户头像"/></div> </div> <div class="after"> <div class="userphoto"><img src="images/1.jpg" alt="用户头像"/></div> </div> </div> </div> </body></html>
效果如图:

3.参考网址:
1.手机QQ http://im.qq.com/mobileqq/
2.微信登录介绍 https://open.weixin.qq.com/
CSS3制作心形头像的更多相关文章
- 心跳(纯代码制作心形,animation动画)
思路:利用两个长方形(比例是2:3 | 3:2)可以合成心形,然后利用动画,缩放大小实现心跳(纯代码),效果如下: <body> <div></div> </ ...
- css3心形 perspective transform
CSS3挺有趣的,能实现不少动画,以下为娱乐内容 <!DOCTYPE html> <html> <head> <meta charset="UTF- ...
- CorelDRAW快速制作绚丽的彩色透明心形
今天小编分享给小伙伴们用CorelDRAW打造绚丽的彩色透明心形.主要使用完美形状组中的心形造型制作出心形图案,经过对图形的模糊操作,再经过图框精确剪裁,最后添加一个彩虹渐变色实现绚丽的彩色透明效果. ...
- css3实现三角形,聊天背景气泡,心形等形状
1.聊天背景气泡: css代码如下: #talkbubble {width: 120px;margin:auto; background: red; position: relative; -moz- ...
- CSS3制作各种形状图像
圆形-椭圆形-三角形-倒三角形=左三角形-右三角形-菱形-平行四边形- 星形-六角星形-五边形-六边形-八角形-心形-蛋形-无穷符号-消息提示框 不废话直接 html界面(亲测的) ------转自百 ...
- CSS3制作各种形状图像(转)
CSS3制作各种形状图像 浏览:1417 | 更新:2015-05-24 14:43 | 标签:css 1 2 3 4 5 6 7 分步阅读 圆形-椭圆形-三角形-倒三角形=左三角形-右三角形-菱形- ...
- 使用CSS3制作各种形状
CSS3的一个非常酷的特性是允许我们创建各种规则和不规则形状的图形,从而可以减少图片的使用.以前只能在Photoshop等图像编辑软件中制作的复杂图形现在使用CSS3就可以完成了.通过使用新的CSS属 ...
- 使用CSS3制作各种图形
1.正圆形 代码: HTML代码: <div class="circle"></div> CSS代码: .circle { width: 100px; he ...
- CSS 魔法系列:纯 CSS 绘制图形(心形、六边形等)
<CSS 魔法系列>继续给大家带来 CSS 在网页中以及图形绘制中的使用.这篇文章给大家带来的是纯 CSS 绘制五角星.六角形.五边形.六边形.心形等等. 我们的网页因为 CSS 而呈现千 ...
随机推荐
- 分布式系统:怎么简单地解释Paxos算法?从二段提交、三段提交讲到Paxos
原文:https://www.quora.com/Distributed-Systems/What-is-a-simple-explanation-of-the-Paxos-algorithm 作者: ...
- 基于synchronized 或 ReadWriteLock实现 简单缓存机制
package cn.xxx.xxx; import java.util.HashMap; import java.util.Map; import java.util.concurrent.lock ...
- 反编译apk时遇到的问题
第一次尝试反编译的时候遇到如下问题:Input file (ganzhou) was not found or was not readable 百度之后说是apktool版本2.0以上,编译命令变了 ...
- JSON数据和对象
在js中像数字类型.字符串类型.布尔类型这些都不能再被拆分,属于基本类型.与之相对有一种复杂类型:对象类型,它是本身由多个其他类型组合而成的. 创建对象有两种方法,一.new Object()创建一个 ...
- Linux Shell中单引号、双引号、反引号的区别【转载】
linux shell可以识别4种不同类型的引字符号: 单引号字符' 双引号字符" 反斜杠字符\ 反引号字符` 1. 单引号 ( '' )# grep Susan phonebook Sus ...
- h5 audio标签在手机上不能自动播放????
最近在做一个微信端的项目,快到接近尾声的时候,发现还没放入音频,于是乎,放入音频,在电脑端测试一切正常,无阻碍. 后来在手机上测试,发现背景音乐不能播放,于是开始找错,刚开始以为是IIS服务器出错,结 ...
- effectiveC++ 内存管理 学习笔记
1.尽量使用初始化列表而不要再构造函数里赋值,初始化顺序和声明的顺序一致,一些类型如const,引用等,必须使用初始化.对于非内部数据类型成员对象应当采用初始化表,以获取更高的效率.example:B ...
- Xcode 调试技巧
一 NSLog调试 官方文档:Logs an error message to the Apple System Log facility. 即NSLog不是作为普通的debug log的,而是err ...
- ratina 视网膜屏幕解决方案大全
第三方教程 http://www.tuicool.com/articles/JBreIn 知乎 https://www.zhihu.com/question/21653056 强烈推荐!!!最牛逼最专 ...
- 无参数实例化Configuration对象以及addResource无法加载core-site.xml中的内容
core-site.xml中配置的fs.default.name是hdfs://localhost:9000.但是这里读取出来的是本地文件系统.原因暂不知?有谁知道?