次画的是QQ浏览器图标,比较复杂,各种高光渐变色内阴影等。其实,CSS画画就和用PS画画一样,从最底层,一层一层往上画,最后合成一张图:
CSS画QQ浏览器图标
html,body{ height:100%; } body{ display: flex; justify-content: center; align-items: center; background-color: #eee; }
.logo{ width: 300px; height:300px; background: linear-gradient(to right bottom,#66adff,#1a6adb); border-radius: 999px; position: relative; } <div class="logo"></div>
效果图:
.logo:after{ position: absolute; width: 150px; height: 150px; content:''; background-color: #eee; border-radius: 999px; z-index: 15; left: 50%; top:50%; margin-left: -75px; margin-top:-75px; }
效果图:
.logo:before{ position: absolute; width: 166px; height: 166px; content:''; background: linear-gradient(to right bottom,#1a6adb,#66adff); border-radius: 999px; z-index: 9; left: 50%; top:50%; margin-left: -83px; margin-top:-83px; }
效果图:
.before-high-light{ position: absolute; width: 168px; height: 168px; content:''; background: linear-gradient(to right bottom,#96d9ff,#5cafff,#96d9ff); border-radius: 999px; z-index: 8; left: 50%; top:50%; margin-left: -84px; margin-top:-84px; } <div class="logo"> <div class="before-high-light"></div> </div>
效果图:
.left-top-high-light{ position: absolute; width: 298px; height: 298px; content:''; background: linear-gradient(to right bottom,rgba(255,255,255,.8),rgba(255,255,255,0) 50%); border-radius: 999px; z-index: 7; left: 50%; top:50%; margin-left: -149px; margin-top:-149px; } <div class="logo"> <div class="before-high-light"></div> <div class="left-top-high-light"></div> </div>
效果图:
.clouds{ position: absolute; width: 90px; height: 90px; background-color: #fff; border-radius: 999px; z-index: 16; bottom: 20px; right:60px; box-shadow: -3px 15px 12px 0 rgba(42,127,236,.3) inset; } .clouds:before{ content:''; position: absolute; width: 100px; height: 70px; background-color: #fff; border-radius: 999px; bottom: -20px; left:-30px; box-shadow: 5px -5px 8px 0 rgba(42,127,236,.3) inset; } .clouds:after{ content:''; position: absolute; width: 123px; height: 60px; background-color: #fff; border-radius: 0 999px 999px 0; bottom: -20px; right:-30px; box-shadow: -16px -9px 11px 0 rgba(42,127,236,.3) inset; } <div class="logo"> <div class="before-high-light"></div> <div class="left-top-high-light"></div> <div class="clouds"></div> </div>
效果图:
.left-bottom-high-light{ position: absolute; width: 150px; height: 150px; content:''; background: linear-gradient(to right bottom,rgba(255,255,255,0) 50%,rgba(255,255,255,1) 70%); border-radius:0 0 0 999px; z-index: 14; left:0; bottom:0; filter: blur(1px); } <div class="logo"> <div class="before-high-light"></div> <div class="left-top-high-light"></div> <div class="clouds"></div> <div class="left-bottom-high-light"></div> </div>
效果图:
.shadow{ position: absolute; width:200px; height:10px; content:''; background:#666; border-radius:50%; z-index: 1; left: 50%; bottom:-3px; margin-left: -100px; filter: blur(4px); } <div class="logo"> <div class="before-high-light"></div> <div class="left-top-high-light"></div> <div class="clouds"></div> <div class="left-bottom-high-light"></div> <div class="shadow"></div> </div>
效果图:
.high-light{
position: absolute;
width:100px;
height:20px;
content:'';
background:rgba(255,255,255,.9);
border-radius:50%;
z-index: 15;
left: -8px;
top: 33px;
filter: blur(4px);
transform: rotate(-45deg);
}
<div class="logo">
<div class="before-high-light"></div>
<div class="left-top-high-light"></div>
<div class="clouds"></div>
<div class="left-bottom-high-light"></div>
<div class="shadow"></div>
<div class="high-light"></div>
</div>
最终效果图:
创文章 请勿转载
上一次教给大家使用倒叙代码实现 “小编撤回了一条消息并亲了你的小脸”(订阅我查看往期)
可能小编第一次教大家,语言有些混乱导致很多人没有看懂。
后来小编建了群在里面发了视频,有兴趣的可以通过往期文章查看
废话不多说,这一次的比较简单,先给大家看一看效果:
限制ZZ可见的说说,这样发会被打的...谨慎使用。
骗超赞专用的说说
也可以在他人的评论中使用
其实这一次的代码非常简单,就是利用QQ空间本身自带的表情图标
这些图标不能直接打出来,而是被赋予了一个编号
例如我们刚才使用的打赏的图标的代码就是:
[em]e10033[/em]
其中我们来看一下 10033 是表情的代码,33号表示打赏的图标。
这一个号码可以任意替换以达到不同的效果,如下图:
使用方法,看上图中的图标(竖着看,分三排)
第一个图标的代码是:[em]e10001[/em]
第二个是搜集的图标: [em]e10002[/em]
第三个是Ipad的图标: [em]e10003[/em]
第十一个是一朵花的图标: [em]e10011[/em]
接下来,跟大家说一下图中,发表的说说的时候文字如何变成其他颜色:
{uin:1000,nick:点击领取红包}
其实这是一个连接,点击后会打开QQ号为1000的人的空间
效果就是:
好啦,大家可以随意发挥自己的想象力啦
什么Iphone7 Iphone8在线都不在话下
小编已经迫不及待地想要看看大家有什么好的创意了!记得在回复中告诉小编哦
记得关注小编哦~
击右上方红色按钮关注“web秀”,让你真正秀起来
前言
经常能够看到一些用CSS3绘制的精致图形,它们通常由矩形,圆形,椭圆,三角形,梯形等组合而成。要想绘制我们自己的图形,就要先了解下基本图形的绘制方法了。
一个display:block的元素设定宽高之后表现为矩形。通过设定border-radius可以得到圆角矩形,圆形和椭圆形。
前面有文章CSS绘制三角形和箭头,不用再用图片了,可以先去了解一下!
在使用border-radius时,有几点可能需要注意一下:
1. border-radius,可以分别对4个角进行设定。 例如上图:border-top-left-radius: apx bpx;
2. border-xxx-xxx-radius的两个值分别代表着椭圆长轴和短轴长度的一半,通常简写的时候例如3. border-top-left-radius: 10px;(border-top-left-radius:10px 10px;) 表明长轴和短轴的长度均为20px,也就是半径为10px的圆形(圆角部分)。
3. 当使用百分比数值时,a 相对于width, b相对于height
如果a==width/2, b==height/2,结果就是一个椭圆,与此同时a==b,那么就可以得到一个半径为a的圆形了。
在看三角形之前,首先看看三角形的“绘制者”border,下面的例子:
纯CSS3绘制腾讯QQ的企鹅Logo
纯CSS3绘制腾讯QQ的企鹅Logo
.test{ border: 20px solid; border-top-color:#4e5ecf; border-right-color:#ee1166; border-bottom-color:#44bb44; border-left-color:#775544; width:100px; height: 100px; background: #272822; }
将每个boder的颜色值设为不一样,就可以清楚的看到每个border的负责区域,有三角形的雏形了。其实,绘制三角形的原理很简单,如下图
纯CSS3绘制腾讯QQ的企鹅Logo
我们可以这样去理解一个border所代表的区域,那就是“三角形x2 + 矩形”,以border-bottom为例,
矩形=width x ( border-bottom-width )
相邻的border交叉的区域构成一个矩形,每个border各负责一半,一个直角三角形。只要将其中的一个border的颜色值设为transparent或者背景色,从视觉上就可以得到一个直角三角形了。
当width=0 (height=0, border-left || border-right)时,我们通过调整border的宽度可以将这两个直角三角形拼接成任意形状的三角形,或者调整width(height)等获得一个梯形,当然梯形也可以通过拼图得到,这样不是更简单吗?。Transform中旋转将为我们提供更多的灵活变化。
绘制企鹅
结束了对于基本图形部分的一些讨论,开始着手于QQ 企鹅的绘制。
第一步当然是基本框架的绘制了。
通过对手里的Logo图像的观察,按照层次划分来组合最终的效果。选择使用绝对位置position:absolute;来布局各个元素。主要划分为头部,身体,围脖,双手,双脚。
框架的结果图:
纯CSS3绘制腾讯QQ的企鹅Logo
介绍下这个过程中几个比较典型的图形绘制方法:
1、企鹅的眼睛:椭圆,直接设置border-radius:50% 50%; 即可(因为宽高分别为44px和66px,所以也可以这样设定:border-radius: 22px / 33px)
2、围脖的尾部:一个圆角各异的矩形,所以这里需要对几个角分别设定border-radius,微调的结果为
border-bottom-left-radius: 50% 43%; border-bottom-right-radius: 15px; border-top-left-radius: 20% 57%;
3、企鹅的胳膊:手的绘制较为麻烦一点,可以分为上下两个部分,将绘制的结果拼接到一起。那么对于不需要的部分怎么办呢?我们可以将上(下)部分放到一个div(container)中,利用overflow:hidden的属性来截取所要的部分。绘制复杂图形的时候常用的方法就是切割和拼接,将图形切割成一个个简单的小块,通过层叠和旋转变化进行组合。
使用transform:rotate(deg)的时候,优先设定transform-origin属性,会比较方便。设定的点作为中心点,整个图形绕着这个点进行角度变化。例如:transform-origin:bottom left, 使用左下角作为原点。也可以使用具体的像素值和百分比。
在基本的框架线条中比非常多的使用了border-radius用于构造各种曲线条,小企鹅是圆圆胖胖的,:)
接下来就是对只有基本线条的小企鹅进行着色了。着色的过程可以帮助我们调整z-index,也就是各个模块的重叠层次,遮盖了一些无用的线条和框角。
喜欢小编的点击关注,了解更多知识!
演示地址和源码点击下方“了解更多”
*请认真填写需求信息,我们会在24小时内与您取得联系。