整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

代码变油画精细到毛发,前端小姐姐用HTML+CSS,

代码变油画精细到毛发,前端小姐姐用HTML+CSS,让美术设计也惊叹
源:量子位
链接:https://mp.weixin.qq.com/s/IIWgNvqp0jxcD-J_CikV8w

HTML不是编程语言,但这并不妨碍精通它的大佬玩出花来。

普通的前端,用HTML+CSS制作网页,元素简单,工具丰富。

大佬级前端,用HTML+CSS绘画,全程不用PS、AI这种图形化的图片编辑器,单纯敲一行行代码纯手工绘制。

把代码转换之后,就变成了鲜嫩的水果:

或者画出洛可可风格的古典女性肖像:

还有弗拉芒巴洛克肖像风格的人物画像,充满了中世纪的禁欲感:

现代的也有,比如这位在粉色灯光下的着礼服的妹子:

以及充满者50年代气息的复古风人物海报:

曲线、光影、渐变,每个元素都相当复杂。

而且,创作过程中不用SVG,只用Atom文本编辑器和Chrome开发者工具。

也就是说,画面上的每一条曲线和渐变、每一处高光和阴影、每一根头发和睫毛、每一片蕾丝和褶皱,都是一行行代码从头敲出来的!

如此精细程度和创造力,让学美术的网友感叹“学画画不如写代码”,让学计算机的同学觉得“别人写的这么艺术,一定是我的教科书打开方式不对”。

真·交叉学科大佬。

这个项目也一度登上了GitHub Trending排行榜第二名:

并且Issues里都是诸多用户的膜拜:厉害!崇拜!太棒了!

它们的作者,是湾区前端大神Diana Smith小姐姐,她目前是企业及软件开发商Atlassian的一名资深Web开发。

绘制过程

Diana在专门讨论CSS的网站CSS-Tricks写下了详细的教程。

画出这样一个图形分成几步?

如果不用CSS,一般都是直接嵌入这个特殊的图形。

如果用CSS,那么就从黑色矩形开始,然后在两侧加上上两个

与白色背景颜色匹配的边框半径元素。



先画出一个黑色矩形,然后两边用圆弧遮挡。有了基础形状后,下一步就是给它添上渐变的背景。但是如果用矩形方式填充,得到的效果就是这样的:

Diana的办法是:在保留矩形的同时,加上两个弯曲的div,把凹进去的部分也填充上。

最后完整的代码是这样的:

div{
  width: 500px;
  height: 350px;
  background: #000;
  position: relative;

  &::after, &::before{
    width: 20%;
    height: 100%;    
    position: absolute;
    top: 0;
    z-index:2;
    content: "";    

    background: #1e5799; 
background: -moz-linear-gradient(top, #1e5799 0%, #7db9e8 100%); 
background: -webkit-linear-gradient(top, #1e5799 0%,#7db9e8 100%);
background: linear-gradient(to bottom, #1e5799 0%,#7db9e8 100%); 
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#7db9e8',GradientType=0 ); 
  }

  &::after{
    border-radius: 100% 0% 0% 100%;   
    right: 0;
  }

  &::before{
    border-radius: 0 100% 100% 0;   
    left: 0;
  }   
}

body{
  background: #1e5799; 
background: -moz-linear-gradient(top, #1e5799 0%, #7db9e8 100%); 
background: -webkit-linear-gradient(top, #1e5799 0%,#7db9e8 100%); 
background: linear-gradient(to bottom, #1e5799 0%,#7db9e8 100%); 
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#7db9e8',GradientType=0 ); 
}

你也可以去这个完成查看CSS样式的实际运行效果:

https://codepen.io/jean-jordan/pen/KeKaBw

刚刚我们画的那幅画像不像人的脖子?好的,我们再回到人像画上,Diana绘制人物的脖子也是类似的过程。

在上面这张图里,我们看到了Diana如何逐步改形状,最终得到了油画中人物的脖子。

但是仅仅会画各种几何形状,是无法生成艺术品的,Diana总结了她在绘图中的5个重要CSS属性。

1、边界半径(border-radius)

边界半径是为了让矩形的边角过渡得更自然,对于大多数网页开发者来说,只需一个参数border-radius,可以设定不同的半径数值。

border-radius: 15px 10px 40px 30px / 40px 10px 15px 30px;

2、盒子阴影(box-shadow)

对多个盒子阴影进行分层是增加深度的最佳方法之一。框阴影将粘附到html容器的边缘,也会沿着边界半径定义的边缘。

box-shadow: 6px -11px 20px 1px red, -15px -15px 5px -10px blue, inset 5px 5px 35px 10px green;

开发者可以指定模糊半径,以及阴影是向内延伸还是向外延伸。

3、变形(transform)

变形的主要方式有:旋转(rotate)、缩放(scale)和倾斜(skew)

transform: rotate(-45deg)
transform: scale(0.7, 1.3)
transform: skew(25deg, 30deg);

此外还有透视,让物体产生远小近大的视觉效果,或者是仅仅为画出一个梯形。

transform: perspective(10px) rotateY(5deg);

4、线性梯度(linear-gradient)和径向梯度(radial-gradient)

线性梯度用于定义一个方向上的渐变效果,径向梯度用于定义圆和椭圆形的渐变效果

background-image: linear-gradient(0deg, blue, transparent 60%),
radial-gradient(circle at 70% 30%, purple, transparent 40%);

5、层叠(overflow)

层叠是一种将大量杂乱元素填充到一个整齐的包中的方法,可以创建一些有趣的形状。在变形那部分的基础上使用hidden参数,可以把边缘遮盖起来。

overflow: hidden;

以上5种元素缺一不可,随便少一种都会产生怪异的效果。

从左至右分别是缺少边界半径、阴影、变形、梯度、层叠的效果(点击查看大图)

不过即使这样,也很有抽象艺术的美感,仿佛在看毕加索的作品。

只适用于Chrome

不过,由于这是一个纯个人艺术创作,Diana小姐姐并不关心浏览器适配性。

因此,这些代码在Chrome里可以完美展现,但如果用其他浏览器打开,可能就会出现不一样的效果。

比如,MAC上的Safari浏览器打开,妹子的眼睛就方了:

肩膀上的高光,变成了一个大圈圈:

胸前的礼服上,也被泼了一道墨:

如果用早期的Chrome打开,会出现惊悚的头身分离的效果:

早期的Opera浏览器,打开之后脸方了:

Windows 7上从IE 6到IE 11,显示出来的都是这个鬼样子:

浓重的线条,甚至有点抽象艺术的感觉。

同样是早期IE,放到Mac上也一样鬼畜,这是IE 5.1.7的效果:

还有人试了试,在Windows 98系统的IE 7浏览器打开,会变成非常像素风的样子:

最恐怖的是三星手机上的夜间模式打开:

连人种都变了啊!

其他的几张画,换个浏览器打开也比较鬼畜。

妹子你bra里的钢圈出来了啊!

拉夫领变得透明而有光泽,领口的蕾丝干脆断掉了,仿佛是逃难时期的肖像画。

最后,如果你在iPhone上装了Chrome,出来的也是Safari的效果,想看完整效果的话,请在安卓手机或者电脑的Chrome上打开。

因此,有不少网友都觉得,这几幅画可以当成浏览器测试项目,一试就能知道内核用的是谁家的。

反向绘图

CSS太难,学不会?不要紧,虽然我们不能把代码变成图片,但是可以把图片变成代码啊。

没错,就是ASCII艺术,早在DOS时期,就有人用命令行界面来显示图片。直到今天已成为一种流行的互联网文化。

用单色字符来画出世界名画已经不算新鲜事。最近又有个码农开发了一个新的项目Primg,让任何一幅画都可以用质数来表示。

比如蒙拉丽莎,就可以用一个3万位的质数二进制方式绘制出来。

为计算机里有Photoshop,你就是设计师?使用Photoshop的方式百百种,你是设计了一年还是设计了十年,从细节就可以看得出来(附上老鸟设计师常用的几个快捷技巧) >>>

除了大量使用快捷键是基本以外,老鸟设计师跟菜鸟设计师在使用Photoshop时有着各种不同。McCann Prague在他们的征人启事上加入可爱的idea,让你看见他们想征的老鸟跟菜鸟设计师之间的差别。

第一次碰Photoshop时的版本

老鸟:Photoshop 6.0

新手:Photoshop CS 5

图层的整理

老鸟:群组、上色分类。

新手:无。

引导线的使用

老鸟:简单明了、了解响应式网页设计。

新手:过度使用。

是说从Photoshop版本来看,他们想征的老鸟应该是创意总监等级了吧!

附网易同学分享的Photoshop技巧秘籍:

技巧1:快速标注尺寸

你是否曾在制作规范中,让标注尺寸搞的头晕眼花!你是否曾在视觉走查中,让标注尺寸弄的怒气报表!此时已经陷入了无限的脑补中,不能自拔……..

那么问题来了!

如何才能迅速的,无脑的,甚至让不会用PS的长腿欧巴也能分分钟标注尺寸呢??

Photoshop JavaScript

没错就是他,不是神兵不是利器,只是一个PS中小小的插件。让我们一步步的使用它吧!

(1)下载一个Size-Marks.jsx-v0.1.1的压缩包(微盘下载)

(2)解压缩以后打开文件,会找到“Size Marks.jsx”文件,把它复制黏贴到Photoshop文件安装路径下的:

OSX路径:OS X: /Applications/[Photoshop]/Presets/scripts/

Windows路径:C:\[Program Files]\Adobe\[Photoshop]\Presets\scripts

(注意:如果你的软件安装在D盘或者别的盘里就在安装的盘里找到此路径)

(3)重启photoshop,会在菜单“文件”——“脚本”下找到 Size Marks,然后我们就需要给它命名一个快捷键了。

(4)在菜单中,找到“编辑”——“键盘快捷键”,然后会出现一个窗口,在窗口中展开“文件”——“脚本>”下的“Size Marks”,然后直接点击键盘上的“ctrl+shift+L”即可生成此插件的快捷键。

(5)打开你想要标注标出的图片,点击选择工具划出想要标注尺寸的区域,然后ctrl+shift+L就OK了。

(来一个尺寸复杂的页面测试下,标注这些尺寸20秒不到就OK,好似魔鬼的步伐,看不清点击放大)

(并且会在图层栏中生成对应的长或者宽的尺寸数值,一目了然)

技巧2:内置icon搜索器,PSD拿来就用

UI设计中免不了图标的设计,但是当排期紧、要的急时,我们免不了就去某瓣等什么网站上去看、去下载….

要是有这样的搜索能力或是这样的复制能力,那还说啥,早就一统天下了。

但是,我们没有,那如何才能,无需注册,无需下载,直接PSD源文件拿来就用的方法呢!

Blendme

就是它!它!它!废话不多说,这个属于PS拓展功能插件安装起来还是有些繁琐(我曾被折磨一个下午)

(1)首先登录它的官网下载安装包(官网已停止下载,移步微盘下载)

(2)检查电脑中是否安装过Adobe Extension Manager(有的可以暗喜)如果没有去官网下载一个吧,记得选和你PS同版本的下载安装(此插件低于PS6的安装不了)Mac不存在这个问题直接下载就好了。

(3)将从官网下载的安装包后缀名是.zxp用Adobe Extension Manager打开,它将自动安装。

(4)重启PS,点击窗口–扩展功能–blendmein,就OK了,搜索要输入英文,icon都是矢量的随你放大缩小, 还再等什么愉快的玩耍起来吧!

技巧3:配色小助手

对于我这样的色彩感蛮差的人来说,每次遇到色彩复杂的时候就头疼……

这位上色的童鞋,我们做朋友可好。

但是我们也不能就此放弃,除了平时多看多练习,多累计经验以外,我们有没有什么小招数呢…..

Kuler

一个PS自带的原生插件,来帮助我们配色(注意:同样也是PS版本低于PS6,或者安装建议版绿色版什么的用不了扩展功能哦)

(1)打开PS,点击窗口–扩展功能–kuler,就OK了。

(2)你可以自己在搜索里找想要的颜色的主题,或者直接在给出的栏目里面找,总有一款适合你。

(3)当然你也可以给自己已经选好的颜色进行配色,选择创建,选择基色,再在下面的十六进制值中输入色值然后回车然后你就可以根据你自己的需要进行调色了。去选择你最喜欢的颜色吧。

这次就到这里了,祝大家使用的开心!

===============

公众号:春树镇

研究讨论:互联网技术,php开发,网站建议,app开发,html5开发,设计,小说,电影

在网页开发过程中,Web前端处于网页设计师的下游,在工作上,他们往往需要紧密的协作。这篇学习日记所讲到的PS技能,则源于他们的工作交集部分。无论你是网页设计师、还是Web前端工程师,只要你能教会对方以下这些PS技能,你们将能一起快乐的玩耍,友谊值瞬间Up、Up。

从日常的工作中,@酷coo豆 就总结出来了,以下四个最常用的PS技能,它们分别是:

1、常规切图

2、生成图片资源

3、生成CSS代码

4、批量压缩图片

一、前面三种PS操作演示

<script src="https://lf3-cdn-tos.bytescm.com/obj/cdn-static-resource/tt_player/tt.player.js?v=20160723"></script>

△视频演示:切图、生成图片、复制CSS样式

二、PS批量压缩图片

在WEB前端开发过程中,一些专题页面中,时常会包含有大量的案例图片需要展示,比如:图集、相册、新闻配图等。直接从相机或手机得到的图片,其分辨率大小不一、体积巨大,在这样的情况下,我们往往需要对这些图片进行压缩处理。

搓下面链接,解锁PS新技能:

PS批处理教程——让电脑帮你工作,解放你的双手!

△视频演示:用PS批量压缩处理图片

三、批处理的其他用处

除了像上述视频中展示的那样,可以用PS批量处理压缩图片,我们还可以借鉴到:给图片批量添加水印、批量调色、裁剪图片等。总之在工作过程中,有大量简单、重复,类似流水线生产的操作时,你都可以考虑用Photoshop的批处理功能,来提升工作效率。

PS人像调色

ok,以上就是@酷coo豆 整理的“Web前端必备PS技能”的全部内容,更多系统全面的网页设计教程推荐,欢迎访问平面设计学习日记网。

0基础,网页设计学习路径:http://www.xxriji.cn/career/7.html

推荐网页设计教程:http://t.cn/RcxBPkx

如果觉得文章所有帮助,欢迎大家转载分享,最后感谢你的阅读。