Archive for the ‘Informatics’ Category

与HUST有关的三人三事

又是一年夏天 又是一个毕业季

根叔的寄语

如果看过了Ellen DeGeneres at Tulane’s 2009 Commencement Speech(youtube地址youku地址),一定会觉得国内的毕业典礼是相当的无趣。

而这一次根叔只是用我们平时说话的语言就让大家感动了。

浪费了太多的时间听了太多虚假的言语的我们,只是需要一些跟我们说真实的话。

请去掉官僚 让我们真实的对话 赞根叔

“母校 就是那个你一天骂她八遍却不许别人骂的地方。”

李行亮之快男

之前听过他在华工摇滚节上的演唱  Desperado确实惊艳

不记得跟谁一起去看的他的毕业个人演唱会,似乎是跟小猴子他们一起刷过去的。

去看了演唱会的人,定会被那样的情景打动。

一个人唱歌,一万个人在听。

朋友的伴奏,站台。

记得子时当时还弄了个女子第一band

跟一帮有共同梦想的人为了一个梦想而激情奋斗的夏天

之前说不要踏入娱乐圈的他 今年竟然参加了快男 而且一路高歌进入十二强

祝福他能实现音乐梦想

那年一起听演唱会的同学们 你们现在都在哪里呢?

谢谢 李行亮唤起的那年夏天的hust露天电影院的回忆

R.I.P 陈熙

周五晚上小明忽然在qq上跟我说 如果在国外不开心 就快回来吧

然后跟我讲了陈熙的事情 震惊 不敢相信

对于这个名字并不熟悉 虽然一起上过很多课

惋惜 是怎么样的绝望让他彻底离开的勇气

太理解在国外的孤单 朋友一个一个的送

还有找工作的艰辛与压力

此刻对胖子充满了钦佩 如何强大的内心 让他可以坚持在这边找工作找一年

但是熬过来就好了  everything is gonna be OK

傻孩子 希望你在天堂会快乐 没烦恼

这个事情以后对于心理健康方面思考了很多

工作以后 我们都变得越来越忙碌 但是请别忘了老朋友

保持联络 你的留言短信电话会温暖另一个人的世界

最后 积极生活 一切都会好起来的

Danyifeng.com 正式启用

昨天godaddy上0.99刀的offer 迅速强入一枚

danyi.codetea.co.uk 会直接转向danyifeng.com

Walle 早上没睡醒就被我拉起来当模特了。。可怜的孩子

散花hoho

欢迎交互链接 O(∩_∩)O

新浪专区之天下贰

12月初的时候,蚊子师父帮我接的网易的天下贰在新浪游戏专区的页面设计。 基本上市连熬三天。搞定了, 师父帮忙很多,也学到不少东西。

今天早上又被呼叫,有新单子。 于是乎去查了下新浪专区(http://games.sina.com.cn/o/z/tx2/),页面终于换成我的设计,只是只是怎么只改了一半。 品质差了很多。。上图

设计图:

Pure CSS Speech Bubbles

今天要来学的列是这个《Progressive enhancement: pure CSS speech bubbles。Demo页面在这里。Progressive enhancement渐进增强 在《sliding label》 中有提到。这个概念真是无所不在啊,一定要好好掌握。

图1

先看效果图,

图2

今天学习的方法呢,还是copy html+css源码来分析 看别人是怎么写代码 怎么实现的

HTML5 structure—header, hgroup & h1-h6

在.container 这个div里面出现了 下面的代码

<header>
<hgroup>
<h1>Pure CSS speech bubbles</h1>
<h2>By <a href="http://nicolasgallagher.com">Nicolas Gallagher</a></h2>
</hgroup>
<p>The demo page for <a href="http://nicolasgallagher.com/progressive-enhancement-pure-css-speech-bubbles/">Progressive enhancement: pure <abbr>CSS</abbr> speech bubbles</a>.</p>
<p>For a detailed explanation <a href="bubbles.css">view the <abbr>CSS</abbr> file</a>. It is heavily commented.</p>
<p>All examples use simple, semantic <abbr>HTML</abbr>. No empty elements, no unnecessary extra elements, no JavaScript, no images (apart from that Twitter logo). Have a look at the source code.</p>
</header>

Div 里面出现了header tag, 还有HTML 5的新的元素, hgroup.

The header element represents a group of introductory or navigational aids.
Note A header element is intended to usually contain the section’s heading (an h1–h6 element or an hgroup element), but this is not required. The header element can also be used to wrap a section’s table of contents, a search form, or any relevant logos

header元素代表了一组介绍的和导航辅助信息。

注意这里的header元素通常想要用来做section的标题(1个h1-h6元素或者一个hgroup元素),但是这并不是必须的,header元素也可以包括section的目录,搜索表单,或者任何相关的logo。

(来自HTML5 (Author Edition)的解释)

hgroup 是一种header的特殊形式,必须包括切且只能包括一组(至少两个)h1-h6。这里有篇文章《HTML5 structure—header, hgroup & h1-h6》详细讲,应该怎么用header,hgroup和h1-h6来做文章的结构。

Drawing a bubble

先介绍下对应图一的画法

HTML 代码

<p class="triangle-isosceles">这是图一的例子</p>

Css的代码

/* Bubble with an isoceles triangle
------------------------------------------ */
.triangle-isosceles {
	position:relative;
	padding:15px;
	margin:1em 0 3em;
	color:#000;
	background:#f3961c; /* default background for browsers without gradient support */

	/* css3 */
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
	/* NOTE: webkit gradient implementation is not as per spec */
	background:-webkit-gradient(linear, left top, left bottom, from(#f9d835), to(#f3961c));
	background:-moz-linear-gradient(top, #f9d835, #f3961c);
	background:-o-linear-gradient(top, #f9d835, #f3961c);
	background:linear-gradient(top, #f9d835, #f3961c);
}

/* creates triangle */
.triangle-isosceles:after {
	content:"\00a0";
	display:block; /* reduce the damage in FF3.0 */
	position:absolute;
	z-index:-1;
	bottom:-30px; /* value = - border-top-width - border-bottom-width */
	left:50px; /* controls horizontal position */
	width:0;
	height:0;
	border-width:15px 15px; /* vary these values to change the angle of the vertex */
	border-style:solid;
	border-color:#f3961c transparent transparent;
}

从上面的代码可以看出, css分为两个部分 .triangle-isosceles用来画bubbles; .triangle-isosceles:after用来画三角。 作者的代码真的写的相当漂亮清晰哈。 用渐进增强的概念,先满足最基本的内容需求,然后加入css3才支持的圆角功能呢,和渐变的背景。然后用伪元素来画三角.

.triangle-isosceles:after的意思是在 triangle-isosceles之后插入内容。

content:”\00a0″的意思是插入空格,其实也就是占一个“坑”,至于这个坑长什么样子就要有border-width来决定了

bottom的值是负的(上边界和下边界的宽度和)。这个决定了“坑的位置”,靠近bubble

如果想要标准“坑”是三角的宽度和高度都要取0

上面的这些代码就可以画出下图

其他例子可以见demo页面和css文件,自行研究哈

Got a cold..

walle

walle

angelindarkness

angel

忽然想起国内的朋友们估计flickr被墙了 我还是再传一遍好了

Sliding Label

今天在看smashing Magazine的 Newsletter Issues #1 其中介绍了sildding  label, 对于web form的一个改进。

http://www.csskarma.com/blog/sliding-labels-v2/

从上面这个图可以看到,这个表格因为省去了label的空间,所以显得更加的简洁。当你点击input区域的时候,label就滑动到inputbox的前端。不用担心自己不记得改填的这个框是什么内容。

sliding Labels, 是由Tim Wright一月初在他的blog中发布的,用Jquery实现的,demo在这里。Tim Wright采用的是Progeressive Enhancement (这个系列的文章有Understanding Progressive Enhancement,Progressive Enhancement with CSSProgressive Enhancement with JavaScript
)的方式(lifesinger的blog里面有中文翻译版本, 理解渐进增强, css渐进增强JavaScript渐进增强).  渐进增强关注于内容。进入渐进增强的思维方法很简单:只要从内容开始往外想。内容形成坚实的基石,在此之上才能添加样式和交互。

对于这个demo,那些禁用了javascript的人依然可以看到正确的内容。如下图。

下面从代码的角度来分析一下这个demo.

最朴实的页面内容,一个要提交的表单,包括了name, email, Url, comment, 和 提交按钮。 每一个field都用一个div包起来,并赋给slider的类。每个field又包括了一个label和一个input/textarea.

<form action="" method="post" id="info">
  <h2>Contact Information</h2>

    <div id="name-wrap" class="slider">
        <label for="name">Name</label>
        <input type="text" id="name" name="name">
    </div><!--/#name-wrap-->

    <div id="email-wrap"  class="slider">
        <label for="email">E&ndash;mail</label>
        <input type="text" id="email" name="email">
  </div><!--/#email-wrap-->

    <div id="url-wrap"  class="slider">
        <label for="url">URL</label>
        <input type="text" id="url" name="url">
  </div><!--/#url-wrap-->

    <div id="comment-wrap"  class="slider">
        <label for="comment">Comment</label>
        <textarea cols="53" rows="10" id="comment"></textarea>
  </div><!--/#comment-wrap-->

    <input type="submit" id="btn" name="btn" value="submit">
</form>

接下来看CSS代码, 一样的平凡无比,但是注意他给label的属性cursor付了个pointer的值,当鼠标移到label的时候,知道这个是“可点击的”。(注明:”可点击的说法并不准确“。 查阅了以一些资料,关于什么时候应该使用pointer,在CSS3 basic user interface module里面指出The cursor is a pointer that indicates a link.)当label被点击以后,相对应“for“的对象就得到焦点。可以看作是点击了label这个”link” 跳转到inputbox里面。《7 Quick CSS Enhancements for Better User Experience》这篇文章里面也提到了”New rule for you to live by: if the user is meant to click on any element, it should have the “pointer” cursor when the user mouses over it. Links, buttons, SELECT elements, etc.“

body                        { font:12px/1.3 Arial, Sans-serif; }
form                        { width:380px;padding:0 90px 20px;margin:auto;background:#f7f7f7;border:1px solid #ddd; }
div                         { clear:both;position:relative;margin:0 0 10px; }
label                       { cursor:pointer;display:block; }
input[type="text"],
textarea                    { width:300px;border:1px solid #999;padding:5px;-moz-border-radius:4px;-webkit-border-radius:4px; }
input[type="text"]:focus    { border-color:#777; }
input[name="zip"]           { width:150px; }

/* submit button */
input[type="submit"]        { cursor:pointer;border:1px solid #999;padding:5px;-moz-border-radius:4px;-webkit-border-radius:4px;background:#eee; }
input[type="submit"]:hover,
input[type="submit"]:focus  { border-color:#333;background:#ddd; }
input[type="submit"]:active { margin-top:1px; }

接下来就是要看一下js的代码是如何实现的了。首先我们分析一下逻辑关系

  1. 让label从input/textarwea的上方移到, input/textarea里面
  2. 如果input的value不为空的话,label就应该左移
  3. 当得到焦点时,value为空,label左移。value不为空的时候label在左面保持不动。
  4. 当失去焦点,value为空的时候,label归位,value不为空的时候,label在左边保持不动

然后看代码

/*
$(function(){
$('form#info .slider label').each(function(){
 var labelColor = '#999';
 var restingPosition = '5px';

 // style the label with JS for progressive enhancement
 $(this).css({
 'color' : labelColor,
 'position' : 'absolute',
 'top' : '6px',
 'left' : restingPosition,
 'display' : 'inline',
 'z-index' : '99'
 });

 var inputval = $(this).next().val();

 // grab the label width, then add 5 pixels to it
 var labelwidth = $(this).width();
 var labelmove = labelwidth + 5 +'px';

 //onload, check if a field is filled out, if so, move the label out of the way
 if(inputval !== ''){
 $(this).stop().animate({ 'left':'-'+labelmove }, 1);
 }

 // if the input is empty on focus move the label to the left
 // if it's empty on blur, move it back
 $('input, textarea').focus(function(){
 var label = $(this).prev('label');
 var width = $(label).width();
 var adjust = width + 5 + 'px';
 var value = $(this).val();

 if(value == ''){
 label.stop().animate({ 'left':'-'+adjust }, 'fast');
 } else {
 label.css({ 'left':'-'+adjust });
 }
 }).blur(function(){
 var label = $(this).prev('label');
 var value = $(this).val();

 if(value == ''){
 label.stop().animate({ 'left':restingPosition }, 'fast');
 }

 });
}); // End "each" statement
}); // End loaded jQuery

今天关于Sliding Label的学习到此结束!

Letter press

今天在做一个网站的时候,想到要用类似Ps的logo这种效果。于是Google一下了解了一下用PS跟CSS分别怎么实现。
先介绍一下letterPress
LetterPress在wikipedia上的解释是凸版印刷,SmashingMagazine上有一篇讲2009年web design趋势的文章《Web Design Trends For 2009》。 里面指出,LetterPress在设计中使用的很少,从2009年初开始,在产品设计跟网页设计领域出现了很多这样的设计。

Letterpress的效果,可以用PS跟CSS来实现。

先来看一些例子吧:

Ps实现的

Apple的menu

the 365 Days of Astronomy podcast

CSS实现的

德国的一个设计公司的网站,他们的logo也很不错

我个人还是比较喜欢这个效果的,小细节的质感。

下面讲一下怎么实现

PS

在text的效果里面加上dropshadow,blend mode 调成normal, 颜色白色,透明度50%,角度90,见下图

这个是比较简单的Letterpress的PS实现,以后有空再加一些其他的实现方法。

CSS

用ps实现的网站很多,今天早上看Twitter上有人推madewithlove的网站,看了一下页面,全页面的Letterpress的效果,不太可能是图片替代,就firebug了。 然后发现时用text-shadow来实现的.

<shadow> is defined as [ <color> ? <length>  <length>  <length> ? | <length>  <length>  <length> ? <color> ? ],

前两个length是offset,第三个是blur radius. also applies to the both::first-line and ::first-letter pseudo-element.

跟上图一样效果的话 是用下面这段代码实现

text-shadow: #EEE 0px 1px 0px;

text-shadow是在css2中被引入,它并不被所有的浏览器支持,例如IE。 目前只有五类浏览器支持这个属性 Opera 9.5+, Safari 1.1+, Mozilla/Firefox 3.1+, Konqueror 3.4+ and iCab 3.0.3+.

New home

2个多月 终于有了一个安定的住所
很喜欢的房子,很好的房东。

漂泊了太久已经很累很累
等待了太久已经无比疲惫

感受了自己的无力 挣扎与茫然
是否自己选择了一条错误的路
时间会有答案

很想家

国内凌晨 打给一个没有改变的号码
都没说话
用youtube放了两首歌
然后挂掉
晚安 就这样

FOWA|future of web application tour in Edinburgh

难得早起一次,老板开车带着我们去sun的工厂, 相当远离爱丁堡的一个叫做爱丁堡的地方。

会议真的是非常的累。 上午的speaker讲的都非常的tech  下午倒有一些好玩的东西

note一下

1. 经济危机的状况下不能依靠广告这个单一的business model, 如何charge people。 who is your free user, who will be your payable user.

2. social product community. 用一个可以解决用户问题的社区去吸引用户, 然后卖他们需要的东西。 例子: stackoverflow, babycenter.

Joel 建立了一个问答的community, 解决developer的问题, 然后卖给他们查bug的工具 相当的makesense 很好的客户关系 解决他们的问题,提供帮助

3. web developer and designer 的标配: mac 的本本, iphone

4. everyone is on twitter 几乎成了一张名片。。大家坐在一个屋子里相互的tweet着 #FOWA

5. moo的卡片做的真好看 现场大部分人都知道moo 孤陋寡闻了 质量控制取胜  可惜在中国做太贵了 不然可以考虑做个代理

6. 参观了据某同学说即将关闭的sun的工厂, 看了blackbox,datacenter in a container.  就像数据中心放在房车里一样的 还是非常cool的 工厂相当的大 非常的吵 里面吸地的阿姨真辛苦

7. 高跟鞋穿的脚上两个大水泡 T.T 被骗说是business casual…结果大家都是球鞋牛仔裤。。。踩着高跟鞋忿忿了一天。。

最后一张工厂内场照 结束今天的工作 开会坐的真是累啊

dsc00525

译文|8 layout solutions to improve your designs

原文地址:8-layout-solutions-to-improve-your-designs

有是一篇smashingmazhing上的好文, 抽空翻译了三天 才翻译完。 回头一看竟然也快6千多字了。 恩

首发是在yeeyan。 译言上的链接:

八种布局方案改善你的设计(上)

八种布局方案改善你的设计(下)

—————————————————-

内容组织可能对于任何好的网页设计都是最重要和最有影响力的方面。把信息组织在一个构造精美的布局里是一个网站的根基, 应该在考虑风格设计之前弄清楚。 如果没有一个好的布局, 网站看起来好像没有正确地流向,没有连接方式。

在这篇文章中, 我们将讨论八种有用的布局解决方案和技术, 这些将有助你创建一个干净的组织有序的内容布局。 这八种技术包括sliders (滑动器), tabs(选项卡), progressive layout (前进式布局), structured grids(结构化网格), modal windows(弹出窗口), rollover elements (翻滚元素), accordions (手风琴) and mega drop-down-menus (大的下拉菜单).

你可能也对下面几个相关的文章感兴趣:

1. Sliders and Carousels (滑动器和旋转木马)

滑动器,也称为旋转木马, 是一种组织有序,可交互的并且可流畅表达信息的方式。 滑动器是一种非常流行的技术因为确实非常实用。你可以把大量的内容放在一个固定紧凑的区域, 如果没有滑动器, 这些内容不得不被放在页面的某些地方,在很多情况下, 你可能并没有空间给他。 当需要的时候你可能想要显示一些信息。silders 可以帮助用户一次只关注一个内容块,这很有用并且很方便。 这就是slider为什么会迟早会派上用场。

Examples of Sliders 滑动器的例子

Thumbnails and icons in the navigation area 缩略图和图标在导航区

当你要设计一个内容滑动器或者图片幻灯片时, 最好是通过在导航区域使用一些图标或者一些缩略图给用户一个简单直观的导航。缩略图和图标给用户一些简介,说明他们在幻灯片中 并且给出一些可用的导航的选项。(比如, 一个幻灯片, 可以有垂直跟水平导航)。 除了这些, 用户可以从滑动器里面快速的选择特定的页面。

Coda site的 一个滑动器的应用, 你可以看到一些tabs(选项卡)在滑动器的上方。 他们创造了一种滑动器/选项卡的混合元素。 这是一个非常棒的想法, 因为通过看缩略图, 用户可以简单的找到一个页面。 而且,图标增加了一种非常强烈,难忘记并且清楚的视觉支持。 除了图标和标签, 你也可以用一些缩略图甚至数字达到同样的目的。

coda

Slider is used for navigation in product items 滑动器被来产品展示导航

与上面的例子不同, 滑动器(slider)不仅可以被用来显示大块的信息, 而且也可以帮组用户以一种方便的方式浏览成千上万的产品。 这里有个例子,SourceBits(见下图) 用了多个选择器(sliders)(一个垂直的一个水平的)提供给用户一个引人的方式去浏览CD封面的。

滑动器(slider)在两边各有一个圆形的按钮指明是怎么样导航的。 很平滑的过渡,因此滑动器(slider)看起来非常吸引人而且使用起来很舒服。 而且你还可以发现每个插图间有很好的空隙, 因此可以简单的点击每一个单独的图标并且有很好的组织。 每一个物品也有非常棒的镭射悬停效果。

nerve2

Vertical content sliders with large horizontal “clickbars” 拥有水平的大点击条垂直内容滑动器

让我们看一下滑动器(slider)在QuickSnapper的 使用。  功能性的垂直滑动器(slider)完美的使用在布局里。 滑动器(slider)里面有大量的物品快照。 这样的有序安排让用户很容易在元素内找到物品。这个滑动器(slider)最好的部分是上下的两个按钮, 他们扩展了滑动器的宽度。 这大按钮使滑动器(slider)变的更简单使用。

这里有一个例子, 如果你选中其中一个展示产品,然后决定去看看别的物品, 你可以简单的点击上面或下面的大按钮去浏览。 这非常方便而且友好。 并且, 如果你去网站试一下, 你会发现这些按钮非常的好,激活跟焦点效果 看上去很棒并且增强了可用性。

quicksnapper

Slider Scripts 滑动器脚本

你可以实现这些技术用下面一些脚本,技术和教程:

2. Tabbed Navigation Elements 选项卡导航元素

基本上选项卡(tabs)导航是一种跟滑动器很类似的技术。 你可以在紧凑的区域保持大量的数据,而这个区域远远小于你通常所需要的大小。选项卡(tabs)导航是一个惯例,大家都在使用他, 并且有一些不用的方式去实现它。这里我们将专注于使用选项卡导航元素在一个页面,而不是用他(tabs)来做网站主要内容导航。一个选项卡(tab)元素 明显的分割不同的内容块, 而又把他们同时放在一个很小的区域。

Examples of Tab Elements 选项卡元素的例子

Distinctive backgrounds, large clickable areas, clear separation特殊的背景,可点击的大块,清楚的隔离

第一个例子来自 Mac Pro website 的“Performance” section。这是一个良好构建的选项卡(tabs)元素的完美例子。 在这些选项卡(tab)上面的标签是可读的, 有大的点击区域,并且很好到做到了视觉隔离, 因此他们看起来是绝大多数用户做期盼的样子。并且 你可以看到当前打开的选项卡(tabs)的背景与显示主要内容的区域的背景是一致的, 而没有激活的选项卡用稍微更深的背景并用阴影来增加他的深度, 看起来是藏在激活选项卡的后面。 这是非常简单的效果但是非常有效。

macpro

Clean tabs with separation of buttons 独立按钮的整洁选项卡

这里有另外一个用紧凑的方式充分利用选项卡(tabs)去表达信息的例子。 Atebits 的布局已经创建好, 这里没有很大的空间可以显示多个内容块。 因此,他们把三个章节放在选项卡里, 保持整洁有序。 当前打开的选项卡与主要内容区域的颜色是一样的, 而未激活的选项卡用的深一点的灰色背景。 你会注意到选项卡之间的一个好的分隔进一步的定义了每一个的按钮。一个细微的斜角被用来清楚的分隔按钮。

tweetie

Clean separation of the entire tab set 这个选项卡集合的清晰分离
Fontcase 有另外一个非常好的有着现代感的选项卡集。 尽管这样的设计没有隔离每个选项卡,但是激活的选项有一个清楚的边界与未激活的分开。 而且你可以看到这里这个选项卡集有分别在上线有一个边界。 这些选项卡用图标和空格来支持文字, 使选项卡变得更容易使用。

fontcase

Tab Scripts 选项卡的脚本

你可以实现这些技术用下面一些脚本,技术和教程:

3. Modal Windows 弹出窗口

弹出窗口(Modal windows),或者浮动窗口(floating windows), 是一种在没有足够空间的布局里面非常棒的表达补充信息的方式。 在弹出窗口里, 你可以呈现一个大一点的图片, 额外的内容, 警告,贴士,视频等等, 让用户可以更容易的注意到。当你放信息在一个弹出窗口的时候, 你需要让你的用户清楚怎么去关闭这个窗口。

还有很重要的一点, 触发弹出窗口的一个链接,缩略图,图标或者是任何图像元素应该与弹出窗口的内容紧密相关。 一个类似的图标,标题,或者是视觉效果能帮助用户建立原始链接跟打开窗口之间的关联。

Examples of Modal Windows 弹出窗口的例子

Modal windows for logins and signups  为了注册和登录的弹出窗口

最常在弹出窗口中用到的元素(区别于传统的媒体文件像图片,音频,视频,屏幕截图等) 是登录和注册窗口。当你使用一个浮动窗口为了登录/注册, 你正在为每一个页面上节省大量的空间。 而且, 用户不用仅仅只是为了登录去载入一个完全新的页面。 他们能在任何页面登录而不让他们当前的会话被打断。 当然, 如果设计师确定登录或者注册过程可以用ajax在幕后实现。

Grooveshark 用一个很好的注册窗口在网站上的每一个页面。注意登录按钮(login-button)在注册窗口(signup-Window)并不打开一个新的页面, 而是用登录的表单替代注册的表单。 这是非常方便而且友好的方式。

grooveshark

Fade out the page or/and use a drop shadow 渐出页面或者用一个阴影

如果你将要使用一个弹出窗口, 渐出窗口背后的页面是很重要的。 可以使用半透明背景, 投影,或者两者同时。 通过做这些, 你做了两个重要的设计决定。 第一, 你带领你的用户关注于弹出窗口,并且远离窗口后面的页面。

另外, 你增加了页面的深度并且是弹出窗口跟页面隔离, 这让窗口看起来是真的物理上的浮动。 在下面的屏幕快照 (KissMetrics) , 你可以看到一个登录表单包含在一个浮动窗口中, 后面的页面褪色模糊。顺便说一下,注意取消/登录按钮也设计的非常好。

kissmetrics

RealMacSoftware 用一个在窗口背后的阴影代替整个页面的褪色。这个技术也很好的增加了深度和隔离感。

rapidweaver

Modal Scripts 弹出的脚本

你可以实现这些技术用下面一些脚本,技术和教程:

4. Rollover Elements 滚动翻转元素

一个滚动翻转的元素(Rollover Elements)是当今越来越流行的一个设计元素, 特别是在公司的网站,工作档案和产品的网站。 他的主要的思想是当用户的鼠标悬停在某些元素上,例如一个按钮, 一些内容将自动的弹出显示在页面上。 下面有一些例子帮助你更好的理解它是怎么工作的

Examples of Rollovers 翻滚的例子

Rollover tabs 翻转的标签项

下面你可以从Miro’s homepage 网站的截屏里看到他们哟你了一个设计很好的打的翻转元素(Rollover Elements)。 这个元素跟滑动器类似, 但是并不是用一个按钮去滑过这些页面, 这个滑动自动的发生。

miro

Subtle rollover hover elements 细小的翻转悬停元素
TaoEffect 是一个很好的用翻转元素(Rollover Elements)非常漂亮的表达附加信息的一个例子。(这个效果第一次是在coda的网站上使用的名单是这里我们用这个例子代替)这些信息用一种非常友好的方式呈现,你所有要做的就是让你的鼠标悬停在这个按钮上。

如果你访问这个网站,你可以看到这个翻转是非常好并且很流畅的动态过度。这个打开的过程是用一个垂直的渐变的扫出。最后你可以看到背景是半透明。同时也用突出的边界去增加与其他的内容的隔离度。

espionage

A content map with rollover elements 用翻转元素的内容地图
OneHub 用翻转元素(rollover elements)实现另外一种效果。类似于一个地图, 这个页面被分成很多快提示。 当用户鼠标悬停在某一个提示上时,附加信息就会自动的现实出来。 这个效果对于想要展示产品的特性或者给用户更多的解释和说明的网站非常有用。

onehub

Rollover element integrated in a slideshow 整合在幻灯片中的翻转元素

SquaredEye给出了另外一种有趣的设计方式。 旋转木马式的菜单让用户可以用翻转元素预览上一个和下一个页面。 在一些情况下这种方法非常的有用。

sq

Tooltip/Hover Element Scripts 提示框/悬停元素脚本

你可以实现这些技术用下面一些脚本,技术和教程:

5. Progressive Layouts  前进式布局

一个前进的布局(Progressive Layouts)是一种用一定顺序去描述一系列内容块的方式, 它不是通常的组织内容的方式,但是也有很多网站使用它。 一个前进的布局(Progressive Layouts)能帮助用户容易的浏览一个长的系列。

Examples of Progressive Layouts 前进式布局的例子

An entire site consists of progressive pages 一个有前进式页面构成的网站
Sursly.com (见下面)的整个作品集的呈现是基于前进式的布局(Progressive Layouts)。 你可以在每一页的右上角看到一个go的按钮。 我们可以通过它之前面的页面找到它。这个页面的前进系统是导航栏和菜单的替代品。 当然,这样布局的主要的缺点是很难去导航甚至很难实现交互的目的。

尽管在这种布局里面每个单独的页面可用锚点来标记书签, 但是他很难让一些随机用户立刻得到一个可用导航选项的整体映像。 除此之外, 这个布局通常只用在单向的导航-前进。 从可用性的角度来看, 这并不好。

tyler

Progressive Vertical Page 垂直前进式页面
Danny Blackman (例子见下) 用前进式的布局(Progressive Layouts)展示了一个作品集。这些独立的元素全部都垂直的呈现在一个页面上。 自动滚动的功能可以带领用户从一个页面的元素到另外一个元素。而且, 没有使用菜单和主导航, 仅仅用按钮带领用户从一个到下一个或者返回。

dannyblackman

ScrollTo Script 滚动的脚本

  • ScrollTo – 这是一个Jquery的插件, 可以用在垂直前进的布局里面,就像上面那个例子一样。

6. Grids 网格

没有一个讲布局的文章可以不提到网格。网格经常被认为是任何平衡的,有序的和简洁的网页布局的一个基本部分。很多设计师用他们来给用户提供一种更为 有效的交流大量信息的方式。 网格可以不用任何其他的技术来显示信息。 一个好的网格系统能把一个页面的所有信息放在一个流畅的布局里面, 但是也能考虑到每个不同块的可读性和可扫读性。

在下面的网站里, 你可以看到它使用了一个非常精确的网格布局。这整个网站只有一个内容页面, 因此这个页面就要展示相当多的信息。 然而,这些信息被组织在一个整洁的两列网格里面, 创立了一个非常精确,明显和固定的有大量间隙的布局; 而且内容是可读和可扫描的。

neutron

Using different backgrounds to separate sections of a grid 用不同的背景来分割网格区域

当你创立一个格子的时候, 你可能要放大量的信息在一个非常紧凑的区域。 你需要保持整洁有序, 但是却没有足够的空白空间。因此你可以对每一个格子使用不同的背景。 你可以用很少的内间距来而不用在两个格子之间留空隙, 而且看起来也不错。Valleycreek.org (见下图), 你可以看到这个非常的策略被用来创立一个良好结构的布局。 你可以看到一个非常的细的线被用来分割不同的格子, 除了这些, 颜色的对比也可以提供非常清晰的分隔。

valleycreek

Grid Generators, Templates, and Tools 网格生成器,模板,和工具

7. Accordions 手风琴

手风琴式菜单和滑动器跟选项卡是基于同样的概念:他们把大量的信息压缩到一个更小的区域里面。手风琴是块状的以垂直的或者水平的方式组织起来, 就像一个选显卡被点击, 一个内容块滑到另外一个 —— 手风琴的菜单一样, 因此得名。

Examples of Accordions 手风琴的例子

Functionality and large clickable areas 功能性的可点击的大块
Alex Cohaniuc 用了一个精心设计的手风琴菜单。 把所有的作品集里面的作品放在一个手风琴中是非常明智,因为他隐藏了(非必要的)一些关于项目的详细信息而且只在必要的时候显示他们。 这个手风琴设计的非常好的原因如下, 首先你可以注意到每一个画布的标题头非常大,更容易点击。 而且,你能看到每一个标题头用一个三角形的标记去说明是否这个手风琴键被打开了。最后,在这个设计中,当前的风琴键的标题头用了一个非常不同的背景色。

pf

Horizontal content slider 水平的内容滑动器
Jason Reed 用一个手风琴把整个网站的所有内容放在一个页面里面。 这个手风琴用和页面其他的部分相同的风格和元素而不是用一些外观完全不一样的元素。 另外, 这个手风琴是水平的(尽管导航选项也有垂直的)。 而且, 我们来看下选项卡。首先, 你会看到在选项卡之间有大量的间隙。 这些选项卡,标题头, 并没有向上个例子那样分隔开, 因此就用大量的空间被用来作为分隔。而且, 可读的大的标签被放在手风琴里面。 这些小的细节非常重要, 因为用户需要精确的知道每个标签项里面是什么内容。

jasonreed

Accordions containing images and information 包括图片和信息的手风琴
Marius Roosendaal 用另外一个非常出色的垂直手风琴设计展示作品图片。 每一个内容块用一张图片展示一个作品。 然而每一个图片都有一个文字标签。你可以看到一个小的按钮用来显示/隐藏它的描述。你也会发现可以链接到一个有更大更详细的作品的弹出窗口。 你不能再在这个小手风琴里面显示大量的信息, 因此惯用的做法就是放一个链接可以带领你看到更多的信息。

marius

Accordion Scripts 手风琴脚本

你可以实现这些技术用下面一些脚本,技术和教程:

8. Mega-Drop-Down-Menus 大下拉菜单

导航不一定是一个链接的简单集合; 最近他被彻底改造不仅仅只是导航选择项, 而是一个网站内容的层次结构。 因此大下拉菜单通常被用在电子商务或者产品的布局里来展示产品的详细信息。 像这样的菜单是一个新的趋势, 并且非常快能被用户发现。 因为他能立刻提供给用户想要的信息, 不需要任何的点击, 这个跟翻转元素(rollover elements)的概念很相似。

Examples of Mega-Drop-Down-Menus 大下拉菜单的例子

一个大下拉菜单的经典例子是 Ruby On Rails Guide 的索引(Guide Index)。 这个菜单被用来作为组织良好,表达清晰的二级导航菜单。  跟上级的菜单不一样的是,这个菜单在右手边有一个转换器按钮来触发下拉菜单。 还可以注意到有一个很柔和的阴影增加菜单的深度, 让他凸现出来。

ror

Multi-level menus with information 包含信息的多层菜单
Porsche (见下图)是上面所讲技术的一个非常完美的例子, 保时捷 (Porsche)的首页 包含一个多级菜单,使用户可以浏览所有的保时捷生产的汽车不需要任何点击。在第三层,有一个显示选定汽车的信息的窗口。这个窗口包含汽车相关的图片,链接 还有一些概要信息。 当然, 一个大的内容块也是一个可以点击的区域, 因此所有的细节特性可以立刻被点击。 为了更好的理解这项技术, 点击下面的图片访问整个页面。

911

Search results displayed in a drop-down-list 搜索结果显示在一个下拉菜单里

与这个技术相关的一个趋势是包含搜索结果在一个下来菜单里的策略。这个技术被用在 Media Temple Knowledge Base. 设计师选用展示信息在一个下拉菜单里面而不是用一个全新的页面去显示搜索结果, 这样结果可以随着你的输入而更新。 然而,注意这样一个事实,不应该忘记提供一个链接,跳转到一个提供全面的搜索结果的页面。

mediatemple

Providing extra information in drop-downs 在下来菜单中提供额外的信息

再次,在 Gateway.com上 你可以看到一个大菜单被用来展示与产品相关的信息并附有链接。 在下拉菜单中的产品被组织的很好, 图片被用来增加视觉支持。 这个菜单也提供了大量的信息, 例如每个电脑的价格。 这能帮助用户在浏览那个页面之前选择产品, 因为很多潜在的客户可能主要关心的是价钱 –至少在购买的最初阶段。 像这样的大菜单最终使导航更容易而且提供了一种显示用户所寻找信息的更好的方式。

gateway

Menu Scripts 菜单脚本

Further Resources 更多资源

你可能对下列文章也感兴趣:

About the author 关于作者

马特 克罗宁 (Matt Cronin)是一个狂热的平面设计师, 网页设计师/开发人员,程序员,摄影师, 数字艺术家 等等。 他也很享受写作, 而且Smashing Magazine写了很多的文章。她现在为一个VAEOU的公司工作, 这个公司不久将有新的服务 Follow Matt on Twitter.

小单注: 是一篇很好的讲布局的文章,一定要多点击例子去体验,会有更多的收获的。我的Twitter @d4ny1,欢迎follow. 若要转载请与我联系@.@ 谢谢关注。

Return top