nth-child和蝉原则实现的奇妙随机效果(译)
此文翻译自charlotte jackson的《Magic randomisation with nth-child and Cicada Principle》
在做伪装的随机模式时将nth-child和蝉原则结合是一个聪明的技术选择。
电脑不能生成随机的数字(例如math.random()在javascript里面不是真正意义的随机),我们能尽可能做
的是给一个伪随机赋值,这种做法经常建立在一个变量不可预测的时候(举个栗子:就像精确的时间)。制造一
系列用于解释如此多变量的一系列随机数的键变得太复杂以至于难以预测。
蝉原则来历
蝉看起来绝对十分就是一只小虫。你应该听说过它们。今天要说的是一种叫做Periodical的蝉,Periodical蝉
会在它们7岁、11岁、13岁或者17岁时同时成群出现。它们找到一个伴侣然后死去。这不是生命的全部。
但是,有趣的是这些数字却都是素数。Periodical蝉在这些时间出现的理由是避免与它们的捕食者周期冲突。
所以,网站的有关原则应与素数十分相关。
随机小水滴
我将此应用到UX London site让其看起来演讲者们的头像是随机使用了扭曲、圆形、水滴状变形。

这是怎么实现的?
nth-child是我们可以怎样使用素数空间定位所有子项的方法。

但是,我发现使用素数不足够完美的定位到所有元素,以至于让其看起来随机得并不自然。所以,我加了
另外一个让nth-child看起来像这样的层:

这样一来,在n前面的数字是后一项其本身的素数。
每一个nth-child有各自的样式,演讲者的图片有四种不同的border-radius,有些还有轻微的旋转。然后
我再调整了nth-child在hover状态下的滴状属性。

你可以亲手访问UX London site查看效果。
标签:css、cicada、nth-child
原文地址:http://www.lottejackson.com/learning/nth-child-cicada-principle
nth-child和蝉原则实现的奇妙随机效果(译)的更多相关文章
- “蝉原则”与CSS3随机多背景随机圆角等效果
一.什么是“蝉原则”? “蝉原则”,英文称作“cicada principle”,是一种让事物的重复出现符合“自然随机性”的规则,为什么这么说呢? “蝉原则”源自于北美,中国似乎并未有这样的说法,这背 ...
- SOLID原则 【转】
S.O.L.I.D 是面向对象设计(OOD)和面向对象编程(OOP)中的几个重要编码原则(Programming Priciple)的首字母缩写. 面向对象设计的原则 SRP The Single ...
- 设计模式学习(二):面向对象设计原则与UML类图
一.UML类图和面向对象设计原则简介 在学习设计模式之前,需要找我一些预备知识,主要包括UML类图和面向对象设计原则. UML类图可用于描述每一个设计模式的结构以及对模式实例进行说明,而模式结构又是设 ...
- S.O.L.I.D 是面向对象设计(OOD)和面向对象编程(OOP)中的几个重要编码原则
注:以下图片均来自<如何向妻子解释OOD>译文链接:http://www.cnblogs.com/niyw/archive/2011/01/25/1940603.html < ...
- 进阶之路 | 奇妙的Handler之旅
前言 本文已经收录到我的Github个人博客,欢迎大佬们光临寒舍: 我的GIthub博客 需要已经具备的知识: Handler的基本概念及使用 学习导图: 一.为什么要学习Handler? 在Andr ...
- Java成长第五集--面向对象设计的五大原则
S.O.L.I.D 是面向对象设计(OOD)和面向对象编程(OOP)中的几个重要编码原则(Programming Priciple)的首字母缩写.以下图说明: 下面就个人的理解来说说这五大原则的含义到 ...
- jQuery 2.0.3 源码分析Sizzle引擎 - 词法解析
声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢! 浏览器从下载文档到显示页面的过程是个复杂的过程,这里包含了重绘和重排.各家浏览器引擎的工作原理略有差别,但也有一定规则. 简 ...
- web前端面试题总结
HTML Doctype作用? 严格模式与混杂模式如何区分?它们有何意义? (1).<!DOCTYPE> 声明位于文档中的最前面,处于 <html> 标签之前.告知浏览器的解析 ...
- 前端开发面试知识点大纲--摘自jackyWHJ
前端开发面试知识点大纲:HTML&CSS: 对Web标准的理解.浏览器内核差异.兼容性.hack.CSS基本功:布局.盒子模型.选择器优先级及使用.HTML5.CSS3.移动端适应 Ja ...
随机推荐
- nginx+winsw windows服务
1.下载Nginx:http://nginx.org/en/download.html 2.下载winsw配置包:http://files.cnblogs.com/files/objecttozero ...
- 嗅探、中间人sql注入、反编译--例说桌面软件安全性问题
嗅探.中间人sql注入.反编译--例说桌面软件安全性问题 今天这篇文章不准备讲太多理论,讲我最近遇到的一个案例.从技术上讲,这个例子没什么高深的,还有一点狗屎运的成分,但是它又足够典型,典型到我可以讲 ...
- 【异常处理_iis】无法启动IIS Express\iisexpress.exe
正调试着程序,突然不能调试了.重启了也没用,还是报错:无法启动程序 C:\Program Files(X86)\IIS Express\iisexpress.exe. 和之前无法启动IIS Expre ...
- [ZigBee] 6、ZigBee基础实验——定时器3和定时器4(8 位定时器)
上一节讲了16位定时器1,本节讲8位定时器3和定时器4! 1.综述 Timer 3 and Timer 4 are two 8-bit timers(8位定时器). Each timer has tw ...
- 手把手教你用python打造网易公开课视频下载软件3-对抓取的数据进行处理
上篇讲到抓取的数据保存到rawhtml变量中,然后通过编码最终保存到html变量当中,那么html变量还会有什么问题吗?当然会有了,例如可能html变量中的保存的抓取的页面源代码可能有些标签没有关闭标 ...
- java Decompiler的bug
java Decompiler 有一个明显的bug是, 之前的打开jar文件,会被缓存起来,如果再次打开同名jar文件(jar内容替换~!),会导致仍然显示原来内容! . 必须关闭Decompiler ...
- MyBatis学习总结(七)——Mybatis缓存
一.MyBatis缓存介绍 正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持 一级缓存: 基于PerpetualCache 的 HashMap本地缓存,其存储作用域为 Se ...
- Asp.net WebApi 项目示例(增删改查)
1.WebApi是什么 ASP.NET Web API 是一种框架,用于轻松构建可以由多种客户端(包括浏览器和移动设备)访问的 HTTP 服务.ASP.NET Web API 是一种用于在 .NET ...
- Netty学习一:基本知识
1. Netty基础知识 1.1 Netty出现的原因 Java NIO 太难用,存在BUG(如Epoll-Bug) 基于第一点,大多数高性能服务器被C和C++盘踞 同样基于第一点,Java NIO编 ...
- 将Windows系统编译的.NET Core程序发布到Ubuntu系统
在可移植方面.NET Core应用程序分为两种,Portable application(便捷,需要目标机器安装.NET Core Runtime)和Self-contained applicatio ...