2019独角兽企业重金招聘Python工程师标准>>>

W3cplus有关于CSS3的教程在国内来说算是比较多,也比较全的了,有理论介绍,也有实例分析。但有关于质感这种细节上的分析文章还没有写过。由于自己的美感较差,也不敢班门弄斧,恐怕误人子弟。今天由好友99客串W3cplus,由他向大家介绍一些有关于这方面的知识,希望大家喜欢,更希望这系列文章对大家今后的工作与设计有所帮助。

所谓质感。。。其实我也不知道怎么说,可以叫做 立体感,或者光感吧。。。作为前端,最怕的不是切什么图,其实是要把设计师的设计利用代码css3化表现出来,写过的css3效果也多不胜数了- -最近总结下,如何做类似的“质感”效果。这个系列我准备分析以下几种质感:

表面的颜色微凸感

单层牌匾立体效果

单层外侧盒子立体效果

多层立体效果

表面质感立体效果

光感动画效果

之后的文章,会详细分析网上流行的css3的一些质感效果,让大家不再恐惧Css3,最终可以见到一张图片就可以构思出他的css3实现!文章中主要用的工具:

markman标注神器。hypersnap7截图工具,新版本已经好用到极点了 chrome developer也就是chrome的F12  FB弱爆了..

css3在线渐变http://www.colorzilla.com/gradient-editor/

css3  http://www.css3maker.com/

1.表面渐变的立体感

分析第一张图 ,可以看到白色区域持续了25%左右,之后线性渐变到e6e6e6,(神马,你要问我怎么分析的。。其实在chrome控制台去掉按钮的文字,宽高padding加大就是了- -)

注意 持续,在css3线性渐变可以写作color-stop,之后我们利用生成器生成代码

background: rgb(254,255,255); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(254,255,255,1) 0%, rgba(255,255,255,1) 25%, rgba(230,230,230,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(254,255,255,1)), color-stop(25%,rgba(255,255,255,1)), color-stop(100%,rgba(230,230,230,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  rgba(254,255,255,1) 0%,rgba(255,255,255,1) 25%,rgba(230,230,230,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  rgba(254,255,255,1) 0%,rgba(255,255,255,1) 25%,rgba(230,230,230,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  rgba(254,255,255,1) 0%,rgba(255,255,255,1) 25%,rgba(230,230,230,1) 100%); /* IE10+ */
background: linear-gradient(to bottom,  rgba(254,255,255,1) 0%,rgba(255,255,255,1) 25%,rgba(230,230,230,1) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#feffff', endColorstr='#e6e6e6',GradientType=0 ); /* IE6-9 */

这是多么长的一坨啊- -

第二张图其实也很简单的。。虽然这个颜色我不知道,但我不会抄啊。。

  你要问为啥会标出#8f0222 我也不是很清楚- -  查看代码应该是44%左右的渐变,于是我们继续生成一个渐变代码

background: rgb(168,3,41); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(168,3,41,1) 0%, rgba(143,2,34,1) 44%, rgba(109,0,25,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(168,3,41,1)), color-stop(44%,rgba(143,2,34,1)), color-stop(100%,rgba(109,0,25,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  rgba(168,3,41,1) 0%,rgba(143,2,34,1) 44%,rgba(109,0,25,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  rgba(168,3,41,1) 0%,rgba(143,2,34,1) 44%,rgba(109,0,25,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  rgba(168,3,41,1) 0%,rgba(143,2,34,1) 44%,rgba(109,0,25,1) 100%); /* IE10+ */
background: linear-gradient(to bottom,  rgba(168,3,41,1) 0%,rgba(143,2,34,1) 44%,rgba(109,0,25,1) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a80329', endColorstr='#6d0019',GradientType=0 ); /* IE6-9 */

这又是多么长的一坨。。

玻璃效果

这是非常常见跟实用的效果,可以在大部分网站看到,包括苹果等。这类的效果很明显会发现在中间有个颜色突变,一般是50%是渐变色,51% 突变为另一种颜色。一般51%部分的颜色比上面要略深一点

因此我们可以写四个渐变点,仍然是线性渐变。

background: #eec2c7; /* Old browsers */
background: -moz-linear-gradient(top,  #eec2c7 0%, #d24d5c 50%, #ba2737 51%, #ee8894 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#eec2c7), color-stop(50%,#d24d5c), color-stop(51%,#ba2737), color-stop(100%,#ee8894)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #eec2c7 0%,#d24d5c 50%,#ba2737 51%,#ee8894 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #eec2c7 0%,#d24d5c 50%,#ba2737 51%,#ee8894 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  #eec2c7 0%,#d24d5c 50%,#ba2737 51%,#ee8894 100%); /* IE10+ */
background: linear-gradient(to bottom,  #eec2c7 0%,#d24d5c 50%,#ba2737 51%,#ee8894 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eec2c7', endColorstr='#ee8894',GradientType=0 ); /* IE6-9 */

中间高光

这一类也是线性渐变的典型。我们要写五个渐变点,他的中间区域是高光区域。其实注意到1e589b跟1e589a两个颜色,这两个其实是无所谓的,跟边角相似即可,甚至相同也可以。生成了个类似代码,不用纠结里面的颜色。  这个渐变设计的要点是  中间的颜色要亮,并且不要一直过渡过去,前面20% 80%左右要有个缓冲。

background: #1e5799; /* Old browsers */
background: -moz-linear-gradient(top,  #1e5799 20%, #2989d8 50%, #1e5799 80%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(20%,#1e5799), color-stop(50%,#2989d8), color-stop(80%,#1e5799)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top,  #1e5799 20%,#2989d8 50%,#1e5799 80%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top,  #1e5799 20%,#2989d8 50%,#1e5799 80%); /* Opera 11.10+ */
background: -ms-linear-gradient(top,  #1e5799 20%,#2989d8 50%,#1e5799 80%); /* IE10+ */
background: linear-gradient(to bottom,  #1e5799 20%,#2989d8 50%,#1e5799 80%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#1e5799',GradientType=0 ); /* IE6-9 */

大家可以尝试做做以下的效果,利用上面的知识即可搞定~

总结  表面渐变颜色的取值是开始写表面质感的朋友最纠结的地方,其实完全可以不用太在意颜色,只要思路对了,渐变拐点打好了,可以轻松作出各种表面的质感效果

注意貌似有不少人对生成的渐变不太理解,我给个公式吧,来转换rgb颜色 rgb(255,255,255,0.6)与hex颜色 。之前的博客有讲过颜色转换  http://99jty.com/?p=573

下面是透明度+颜色

/*
* StartColorStr 和 EndColorStr:
* #4c000000 是 30% 透明度的 #000000 的意思
* 组成: # + 透明度 + 颜色
* 算法: Math.floor(0.6 * 255).toString(16);
*/
background:rgba(0, 0, 0, 0.65);
filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#99000000', EndColorStr='#99000000

特别声明,这篇文章是由我的好友99写的,特别放到W3cplus与大家分享他的学习心得,希望大家能在文章中有所收获。您也可以点击原文阅读。W3cplus后续会持续发布相关文章,喜欢的同学请观注w3cplus的有关更新。

如需转载烦请注明出处:http://www.w3cplus.com/css3/surface-linear-gradient-with-css3-part1.html 同时注明作者:http://99jty.com/?p=763

转载于:https://my.oschina.net/w3cplus/blog/79388

CSS3质感分析——表面线性渐变相关推荐

  1. CSS3,渐变效果(线性渐变,径向渐变,重复渐变),实现各种背景效果。

    CSS3中的渐变实现(线性渐变.径向渐变) CSS3中的background新增属性实现,常见页面效果. CSS3中的图片边框的基本用法 CSS3中的transition属性,实现过渡效果. CSS3 ...

  2. CSS3:linear-gradient,线性渐变的使用方法

    CSS3 渐变(gradients)可以让你在两个或多个指定的颜色之间显示平稳的过渡. 以前,你必须使用图像来实现这些效果,现在通过使用 CSS3 的渐变(gradients)即可实现.此外,渐变效果 ...

  3. html渐变线条代码,CSS3实现线性渐变用法示例代码详解

    前言 演示下太老版本浏览器的渐变实现了[IE9-]; IE9以前,渐变都是通过滤镜实现的,大体的写法就是这样; .testDiv { width:400px; height:400px; border ...

  4. CSS3: 线性渐变用法详解

    前言 演示下太老版本浏览器的渐变实现了[IE9-]; IE9以前,渐变都是通过滤镜实现的,大体的写法就是这样; .testDiv {width:400px;height:400px;border:1p ...

  5. css怎么做倒影虚化,5分钟让你掌握css3阴影、倒影、渐变小技巧!

    一.开始让大家看一张他们组合的图片再一步一步做: 二.先是建立两个文本不做处理运行如图 三.给第一个div字体加上阴影 text-shadow: 5px 5px 10px red; text-shad ...

  6. html背景色线性渐变,css中背景颜色线性渐变和径向渐变效果的示例分析

    css中背景颜色线性渐变和径向渐变效果的示例分析 发布时间:2021-06-04 14:00:26 来源:亿速云 阅读:80 作者:小新 这篇文章将为大家详细讲解有关css中背景颜色线性渐变和径向渐变 ...

  7. CSS3的线性渐变(linear-gradient)

    CSS3渐变(gradient)可分为线性渐变(linear-gradient)和径向渐变(radial-gradient).今天给大家说一说线性渐变. 以webkit内核浏览器为例, 语法: div ...

  8. CSS3 渐变: 线性渐变 linear-gradient 和 径向渐变 radial-gradient

    渐变背景也是CSS3 的新特性,通过它可以在不使用图像的情况下,创建从一种颜色到另一种颜色的过渡.使用渐变的好处是,可以减少对图像的依赖,进而降低浏览网页时的带宽消耗,提高网站的访问速度. 渐变,就是 ...

  9. CSS3渐变——线性渐变

    渐变背景一直以来在Web页面中都是一种常见的视觉元素.但一直以来,Web设计师都是通过图形软件设计这些渐变效果,然后以图片形式或者背景图片的形式运用到页面中.Web页面上实现的效果,仅从页面的视觉效果 ...

最新文章

  1. 【第44题】【062题库】2019年OCP认证062考试新题
  2. linux 清空文件内容命令
  3. hashmap实现倒排索引——查询多个单词出现在多个句子中
  4. Dropwizard,MongoDB和Gradle实验
  5. python3字典相关方法
  6. js获取/设置任意元素中间内容的兼容方法
  7. vc++图形编程基础
  8. linux服务器最大连接数
  9. 整理一些js中常见的问题
  10. document.execCommand() 命令详解 只支持IE
  11. FusionGAN图像融合代码学习
  12. java 16进制转中文乱码
  13. 若已知1800年1月1日为星期3,则对于一个给定的年份和月份,输出这个月的最后一天是星期几。
  14. matlab模拟硅中的点缺陷,硅中的杂质和缺陷.pdf
  15. js 中编码(encode)和解码(decode)的三种方法(传递是特殊符号丢失问题,如‘+’)
  16. Ubuntu grub recuse 修复方法
  17. Google手机操作系统Android将100%开源
  18. maya建模与骨骼动画快速实现人工鱼
  19. 最多显示三行,多余...展开,点击展开收起 getClientRects
  20. 2009.02.24 奥巴马总统发表国情咨文(全文)

热门文章

  1. android toolbar区别,Android《ToolBar》
  2. Spring基于注解的方式一
  3. 十大经典排序C++实现及动图演示
  4. 详解 Qt 串口通信程序全程图文 (4)
  5. Springboot高级特性——缓存
  6. 基于centos6.5搭建redis伪分布式主备节点
  7. Redis设计与实现阅读总结(一)数据结构和对象
  8. CentOS6.9快速安装配置svn
  9. CTF之文件包含的猥琐思路
  10. ElasticSearch配置详解