菜单

网页无图再不是梦想

2019年2月6日 - JavaScript

网页无图再不是可望

2015/08/22 · HTML5 · 1
评论
·
网页开发

原文出处: 百码山庄   

直白以来,网页开发对优化方面做的办事并未停止。网页无图也是为着削减页面资源请求而提议的一种畅想。无可厚非在网页开发的经过中在网页无图方面大家早已取得了不朽的达成:从一起始零星的小图标资源,到新兴小图标合并成一个图纸出现Pepsi-Cola图,再到后来Webfont的出现不仅可以替代7-Up图,而且彻底解决了图标管理难,变色完成麻烦的难点。明天我要跟大家介绍一个小工具,也是可以扶助完结网页无图这一终极目的。理论上来讲,它可以将其余一张图片转换成一个不带图片,不带背景图的清洁的html标签。不过那有前提:你的微处理器得有丰硕的资源去支撑。

 Liya – 2015年8月31日

缘起

那是一个工作日的晚上,我向过去同样如约而至了工作岗位上,启动电脑,打开浏览器我有时发现了一篇名曰《18个你恐怕不信任是用CSS制作出来的事物》的篇章,出于职业敏感,也鉴于好奇我就点进入看了一看,发现其中有一个很风趣的著述:http://codepen.io/HugoGiraudel/full/gpcwa/,它独自用一个div标签就马到成功了那幅小说,于是大家多少个同事好奇使然,开端分析它的兑现,逐步有了上面即将介绍的工具的黑影。


渐入主旨

既然可以行使一个标签制作出一副卓越的像素图,那么是不是就意味着可以用一个标签还原任一一张图片?唯一不可以復苏的是图片的精细度难题。但是,若是可以精细到每一个像素点,那么高精度的还原整张图也统统可行,只是那肯定消耗极度多的处理器资源。这一考虑便是催生那一个小工具的催化剂,于是自己便开头思索起来。

当女神潘潘导师问我是不是明白网页设计中的栅格系统,为啥要采纳栅格系统时,脑中能想到的唯有,“坚守栅格使网页看起来整齐规范”,“方便重构”,“有利于响应式布局”。。。其实对栅格系统只是以蠡测海,并没有系统深刻的明亮,于是做了些功课,整理出这篇小说,希望能给新接触网页设计的同伴们一点参阅。

案例解析

由此拔取开发者工具分析以上案例的源码,我发现实际它的兑现并简单。我们知晓在CSS3中新增了一个安装盒子阴影的box-shadow属性,而这一个特性可以同时设置任意四个例外颜色和扩散度的阴影块,而案例正是完美的诠释了那个新属性。

既然如此,那么大家后天来做个试验,大家在任一一张图上覆盖上一个个轻重一样的小方格子,我们就足以将此外一张图片分隔成一个个的小方格,大家假诺了解那一个小方格的轻重、顺序和职分,我们就可以整合那张图片,如下比较图所示:

图片 1

但是,有个难点:box-shadow的引用颜色是单色的,而各种盒子范围内的绘画是复杂的,大家什么去处理那个题材?

因为box-shadow只可以设置颜色,所以那一个标题标结果唯有一个,找出一个能代表这么些格子的水彩,那么选拔哪一个颜色值就一碗水端平了,可以选格子四角的任性一个、可选中心点,可选格子内的自由一个点,我选用的是格子的左上角那个点。大家简单察觉,假设大家尽量的压缩格子,小到只剩下一个像素大小,大家就足以全体的复原一张图片了。

栅格系统的演进

栅格系统(Grid
system)最早选取在17世纪末的法兰西共和国印刷业,出版业。维基百科对其定义为:栅格设计系统(又称网格设计系统、标准尺寸系统、程序版面设计、瑞士平面设计风格、国际主义平面设计风格),是一种平面设计的格局与作风。网页栅格系统是有平面栅格系统中升高而来,以规则的网格阵列来率领和标准网页中的版面布局以及新闻分布。

技术达成

第一,大家考虑如何根据图片去取到各样格子的颜色值?这几个难点并简单,HTML5为我们提供了Canvas标签,而经过Canvas大家可以动用getImageData方法获获得画布中任一一个点的水彩音信以及透明度音讯。

然后,大家来考虑怎么安排大家的小工具。第一步,依据区其余图片可能会顺应分化的格子大小,所以我会保留一个size选项用于安装盒子的高低;第二步,格子与格子之间是或不是保留间隙,可能根据用户习惯会有分裂,所以我提供space选项来设置间隙大小;第三步,格子实际就是一个盒子的中间一个投影,而阴影的模样是可以按照盒子本身爆发变化的,所以我提供radius属性来计划格子圆角大小;最后,既然大家得到的将是一个html标签,那么标签是足以包括各个品质的(比如:id、class等),所以我提供一个attrs属性(一个json对象),来安装生成的html元素的性质。好了,万事俱备,只欠代码完结了!

终极,我们梳理逻辑,封装代码,已毕了最基础的本子。效果如下演示:

图片 2

为了便于大家看来更实在的成效,那里给咱们提供在线DEMO

栅格系统的原理

栅格系统能够按栅格数分为12列,16列,24列等,可以肆意设计栅格宽度和栅格与栅格间宽度。如下图所示,记页面或区块宽度为W,A代表一个栅格单元的宽窄,a代表一个栅格的幅度,i为栅格与栅格之间的偏离,n为正整数,则有W=(a*n)+(n-1)*i,由于A=a+i,可得(A*n)-i=W。

                                 (A*n)-i = W

本条公式表述了网页的布局与网页背后栅格系统里头的涉及。来察看经典的雅虎案例:

Yahoo的网站页面宽度为W=950px,每个区块与区块的区间为i=10px;假诺选取方面的公式,可以生产A=40px,既Yahoo首页横向版式设计使用的栅格系统为:(40×n)-
10 =
W。只要有限支撑一个横向维度的逐条区块的n值相加等于24,即可保险页面的宽度一定是950px,950px的宽度也正好就是当n=24的时候,W的宽窄值。

在栅格系统中,设计师依据需求指定不相同的版式或者私分区块改变A和i的值举行规划,那样,一个栅格系统的使用就今后早先了。

据悉12列的栅格划分

总结

从效益上来看,我完毕了图片到html元素的更换,可是或许毫无是最好的网页无图完结方案,因为工具转换出的HTML标签,设置了太多的阴影块,对浏览器的渲染并不自己,会对用户电脑硬件有早晚的渴求,更加是块大小为1(即全部还原图片)的时候,转换进程万分缓慢,假使图片再大些,极有可能导致用户浏览器崩溃,由此提议大家测试时慎用大图做测试。而且,转换后获取的html标签和样式字符串大小将有可能远远当先图片本身的大大小小,所以我不得不说那是一种有效的技术方案,但不一定是好的兑现方案。(然并卵)

1 赞 4 收藏 1
评论

图片 3

经典960栅格

设计师们偏爱用苹果系统做筹划,苹果下浏览器的默认宽度为960px, 在 1024 x
768 的分辨率下,我们再打开Firefox,自然状态下,Firefox窗体的高低约为 974
x 650. 减掉左右两边7px的边框,网页的实际尺寸为上图中的肉色部分,高宽为
960 x 650.有趣的960就那样出现了。960只是个记号,并不是标准数。

上面列举的都是重型门户网站,它们的首页宽度为950px/960px。除了微软的Live
Search。按照上面的简要解析可以认为:当搭建页面结构复杂的门户型网站时,开发工程师们不约而同地都选用将页面宽度定为950px/960px。为啥要挑选那个宽度呢?咱们从数学起初:960得以表达为2的6次方乘以3和5,
那使得960足以分开成以下宽度的平头倍:

2, 3, 4, 5, 6, 8, 10, 12, 15, 16, 20, 24, 30, 32, 40, 48, 60, 64, 80,
96, 120, 160, 192, 240, 320, 480

共26种(26 = 7 * 2 * 2 – 2, 减去2是去掉1和960自己),大家标记为:

N(960) = N(2^6 * 3 * 5) = 26

根据下边的算法,可以收获:

N(360) = N(2^3 \ 3^2 * 5) = 22*

N(480) = N(2^5 \ 3 * 5) = 22*

N(720) = N(2^4 \ 3^2 * 5) = 28*

N(750) = N(2 \ 3 * 5^3) = 14*

N(800) = N(2^5 \ 5^2) = 16*

N(960) = N(2^6 \ 3 * 5) = 26*

N(1000) = N(2^3 \ 5^3) = 14*

N(1024) = N(2^10) = 9

N(1440) = N(2^6 \ 3^2 * 5) = 34*

N(1920) = N(2^7 \ 3 * 5) = 30*

N越大,可组成的大幅度值就越多。对栅格系统来说,那意味越灵活。

时下一大半屏幕都帮助 1024 x 768
及其以上分辨率。为了使得的采用屏幕宽度同时确保栅格的灵活度,可以观察960是可怜适宜的。那样,在当前主流屏幕下,960就改为网页栅格系统中的最佳宽度了,也许不久的后天,将会流行1440。

拔取栅格系统的优势

对此设计师来说,栅格系统更加多的是一种布局考虑,可以更有逻辑地拓展规划工作。灵活地行使栅格系统,不仅可以让所有网站相继页面的布局保持一致,让网页的音讯突显更为美妙易读,让规划稿有更好的布局,更可以通过匹配不一样组合,做出过多出色和特其余排版设计。使用网格系统,可以使网页设计给用户正式感和规范感,还怀有一种结构分明的设计感,升高用户体验。网格系统不表示按部就班,一味依照网格线来展开布局。网格系统的意义在于更灵敏的相助设计师有序布局,而不是限制设计师的安排性。

对于前端开发人员的话,栅格系统的采用,给任何网站的页面结构定义了一个正规,大大升高了网页的规范性。在栅格系统下,页面中所有组件的尺码都是有规律的可选拔的,那对于大型网站的支出和护卫的话,能节省不少开支。

乘势响应式设计的盛行,栅格系统先导被赋予新的意义,那就是,一种响应式设计的落到实处方式。响应式的要义是为同一个页面设计三种搭架子形态,分别适配差异显示屏尺寸的装备。

可以看看,一个页面可以拆分成三个区块来了然,而正是那些区块共同组成了那些页面的布局。依据分裂的显示器尺寸意况,调整这一个区块的排版,就足以兑现响应式设计。而借助栅格系统,设计与前端开发人士可以很简单的设计和创设响应式的页面布局。

栅格系统是一种格式化的设计工具,使用栅格系统是一种好的习惯,设计师可以更专注于内容呈递,更专注于强调根本。当然,规矩是用来打破的,当大家精通了布局的意见,了解了栅格的伎俩之后,也无需拘泥于栅格的花样,可以对其“革命”,进行翻新。

资源干货

对于新手来说,使用栅格系统有早晚的本钱,须求数学基础,懂比例,会臆度,但今日互联网上曾经有无数救助设计栅格系统的工具和模版,可以即拿即用。那里介绍多少个常用工具。

960.GS

接纳960.GS应有是最简易的栅格方法,下载960栅格系统,地址http://960.gs/联合图层,置入网页文件,选取混合形式叠加,并锁定,便可以依照其栅格设计网页。

GuideGuide

那几个是免费的好用PS外挂,输入数值就会自行画参考线。在筹划网页前先将参考线全体拉出去。至于怎么样设置和操作办法,互连网上早已重重人写了,可以参见那里:PS
参考线插件GUIDEGUIDE下载及应用表明

WebZap

另一款PS外挂神器,可是要付钱,拥有强大的布局暴发器,可只经过点击操作,在几秒钟内做出网页原型。下载和演示地址:http://webzap.uiparade.com/

参考小说

网站网页栅格化

Grid的运用:ps外挂

网页的栅格系统规划

网页设计中的960栅格系统

Maintainable responsive
layouts

Using the 960 Grid System as a Design
Framework

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图