这篇文章很早之前就看了,不过没翻译,为了详细记录工作学习,翻译下,以便下次翻阅。(ps,看完以后,觉得使用YUI css框架来进行页面布局这种n简单。似乎下次翻阅就是深入css源处了)。
YUI推出的css框架很不错,reset.css消除各个浏览器对元素的默认值的处理, fonts.css是统一浏览器的字体属性,最最有意思的grids.css,符合yui模板开发就可以达到布局的效果,减轻工作。如果深入学习的话,也有很多宝藏可以挖掘,比如浏览器的兼容性问题。
原文:
http://www.thewebsqueeze.com/web-design-tutorials/yui-css-framework-tutorial.html
其实和YUI 提供的doc没什么差别,推荐还是YUI官方文档,YUI提供的文档还是很详细的。
(ps,翻译的可能不是很完整,大概意思到了。有错误欢迎大家指正)
What is YUI?
Yahoo User Interface 库是由一系列javascript特性和控件组成,用来帮助前端开发者开发丰富的用户界面。
YUI同样提供了一个很不错的CSS框架来帮组用户开发。这个CSS框架是很轻量的(当缩小了以后仅6KB),使用简单。
更加重要的是,它能有效运行在所有的A-grade级别的浏览器。
Why use it?
每一个好的UED都会告诉你制作一个好的网站的关键在于使用的是一致性。你的目标就是让用户尽可能少的用脑然后能
得知每一处的使用方法。人们看到网站按照一种特定的方式浏览,而YUICSS则覆盖这些常规的设计模式并且当使用的时候需要很少的学习时间。这种方式双赢。
但是,这个不是说Yahoo在试图让所有人按照他们的方式来设计网站。他们提供足够的空间来进行个性化的设置。
Reset
如果准备使用reset css 文件。非常推荐你深入的看看reset css 即使不使用YUI。每一个浏览器都有自己默认的设置。
当浏览器在元素的margins,line-heights,padding这些赋值的时候。如果时刻都写入布局中,网站会显得很粗糙。
这个reset方式很简单,并且极其的好用。它覆盖了所有浏览器的默认值,并且使各个浏览器都使用同样的数值。大量的使用 *{margin:0;padding:0}的时代已经过去了。使用reset可以更加的深入程序逻辑中。
Font
font这个部分让浏览器中的所有的元素的单位为em。font所作也是一样,覆盖掉浏览器中无关紧要的默认的font设置。这个 意味着YAHOO 提供了推荐的方式方便定义你的font数值大小。
Grids
YUI提供了一个很简单的方法来布局所有的元素,而且不是用笨重的table
YUI在页面分割的方面提供了常用的模式提供给设计者。当获取wrapper div的时候,就可以定义网站的宽度。且这些同样可以
定义其头部、body以及footer,很简单是吧? 下面就是详细的看看
<!DOCTYPE html>
<html>
<head>
<title>My first YUI Layout</title>
<link rel="stylesheet" type="text/css" href="css/reset-fonts-grids.css
" />
</head>
<body>
<div id="doc2"><!--Wrapper div -> doc, doc2, doc3, doc4, or doc-custom-->
<!--当定义好wrapper div 以后 header body foot的宽度也已经定义好了。-->
<div id="hd"></div>
<div id="bd"></div>
<div id="ft"></div>
</div>
</body>
</html>
现在仔细的看看wrapper 的div。YUI所提供的四种不同的宽度
doc-750px; doc2=950px; doc3=100% doc4=974px
当然也同样可以自定义自己的所设置的宽度。
Templates
现在已经有页面的基本的布局了,增加的是YUI提供的模板页面了。关于模板的观念是非常的简单的。可以在body(bd)
中设置两个主要的模块的内容。且将内容放在这两个模块之中任意一个。可以通过设置div的class为"yui-b"来设置
块结构。一旦这样设置后,你就需要告知YUI这个块重要的一块。通过设置其div的id为"yui-main"。为何这样设置,是
因为有些的浏览器不支持":first-child"这样的伪类。
...
<div id="bd">
<div id="yui-main">
<div class="yui-b">
...some content here...
</div>
</div>
<div class="yui-b">
...some content here...
</div>
</div>
...
这个就告知YUI哪一块的内容是网站中重点。不管这块内容是在左边还是右边。(最好是将重要的数据放在不重要的数据
的前头,这个就保证了页面的数据在顶部,这个同样帮助SEO)
现在已经定义内容块。但是需要告知YUI如何进行展示。仅仅只需要在wrapper div上面添加class声明。YUI提供了6种
class值,说明如下:
.yui-t1 两列,窄的在左边,160px
.yui-t2 两列,窄的在左边,180px
.yui-t3 两列,窄的在左边,300px
.yui-t4 两列,窄的在右边,180px
.yui-t5 两列,窄的在右边,240px
.yui-t6 两列,窄的在右边,300px
在wrapper 的div上面添加设置class为yui-t6为常见的布局
<div id="doc2" class="yui-t6">
Special Grids
如果不想使用之前那种定制的模板,想使用3列这样取代两列。或者想添加其他的东西到区域块中。没有问题,
YUI有个很不错的布局机制,包含了各种个性化定制的布局。而不用使用table来布局。
Grids.css在这个方面的工作方式和上面的模板也类似。对于grid有一个外包含的div(grid),和单元cell div (yui-u)工作的方式,和yui-b很相似。参考代码:
<div class="yui-g">
<div class="yui-u first"
>
...some content here...
</div>
<div class="yui-u">
...some content here...
</div>
</div>
上面的代码会创建布局有两个块平均分配占用容器。而这里真正需要注意的是想让哪一个div在左边出现。只需要
在那个div的class属性里面添加 first
和yui-g的平均分配两列相似,有下面6种布局方式可以使用:
yui-g 标准布局 1/2-1/2
yui-gb 特殊布局 1/3-1/3-1/3
yui-gc 特殊布局 2/3-1/3
yui-gd 特殊布局 1/3-2/3
yui-ge 特殊布局 3/4-1/4
yui-gf 特殊布局 1/4-3/4
现在来看看关于布局的内嵌的方式。如果想要一个gird展现为4列。则代码如下:
<div class="yui-g">
<div class="yui-g first">
<div class="yui-u first">
...some content here...
</div>
<div class="yui-u">
...some content here...
</div>
</div>
<div class="yui-g">
<div class="yui-u first">
...some content here...
</div>
<div class="yui-u">
...some content here...
</div>
</div>
</div>
需要注意的是:当yui-g
被嵌套到父yui-g
中的时候,这个yui-g
就如同unit一样。就没有必要再添加一个yui-u来包裹
关于在线进行YUI CSS排版
http://developer.yahoo.com/yui/grids/builder/
这个很不错哦~
分享到:
相关推荐
下面是一些不错的CSS框架,推荐学习使用。 Elements CSS Frameworks Elements 是一个基础CSS框架,它用来帮助设计者书写CSS更加快捷简单。它不仅是一个框架,它拥有自己的工作流。它拥有你需要完成项目的各种...
下面给你推荐了27款优秀的CSS框架,你可以选用。 1. 960gs 960 像素的页面宽度似乎成为了一种设计标准,在当前各种分辨率下,能够很好地展现网页内容。提供较为常用的尺寸来简化网页设计过程,使工作简单高效。 2. ...
最近做了一个项目,使用了Ext框架,项目做好了,结果客户一试用,打开一个页面要6秒,这个页面是用户经常要用的,要频繁打开的,这样用户就受不了了,怎么办?怎么办?怎么提升打开速度?想了各种办法,只能看看压缩...
个人总结了在开发css框架中的一点经验,献丑了。希望大家的讨论能使我们共同进步。:) 1、css框架 中国的互联网行业已经发展了10年,浏览器也从最早流行的NS到现在的FF3.IE7等等……前端开发工程师的职位也诞生了。...
本框架结合了YUI 等优秀框架进行综合整理取其精华。这是我工作3年来的经验总结吧,呵呵。 完美支持html5,可以让开发工作变得轻松顺利。
利用CSS框架,可以简化你的工作,提高工作效率。CSS框架是一系列CSS文件的集合体,包含了基本的元素重置,页面排版、网格布局、表单样式、通用规则等代码块。下面给你推荐了27款优秀的CSS框架,你可以选用。 1.960...
YUI is a free, open source JavaScript and CSS library for building richly interactive web applications.
Liferay中的AUI框架,官方叫做Alloy,是一个UI超框架,能为浏览器的三方面,结构,风格和表现建立网络应用提供连续的简单的API。...AUI的很多语法结构、使用方法都都和YUI相关不太多。熟悉YUI的能够快速熟悉AUI。
今天研究了一下YUI yahoo开源框架,感觉很猛啊。 于是乎我做了一个YUI的ant实现,网上好多关于bat的实现,我就另辟蹊径,出个关于这个的ant实现,嘿嘿独一无二的文章,如果转载的话,其注明作者和网站 copyright:Mr...
AlloyUI是建立在顶部的框架 (JavaScript)的使用 (HTML / CSS)为建设高可扩展的应用程序提供了一个简单的API。 浏览器支持 作为用户界面框架,我们确实关心浏览器支持。 我们的大多数模块都使用HTML5的所有功能...
本文的核心是侧重于HTML/CSS的框架,JS框架或以JS为核心的框架不讨论(比如YUI);多屏已是既定事实,虽然不是所有开发都要考虑自适应,但有自适应功能至少说明了这框架短期内不会被淘汰。前端工程师可以拿来修改后...
通过使用HTML建立框架,JavaScript建立逻辑连接,css进行美化操作,实现一个空调遥控器的界面。 包含:空调开关,温度调节,模式调节,风速调节
hm-tools-js-css 功能:根据URL请求参数将多个javascript文件合并成一个javascript文件返回给请求者。根据URL请求参数将多个css文件合并成一个css文件返回...支持使用yuicompressor对js,css文件内容进行实时压缩、混淆
一、CSS框架 中国的互联网行业已经发展了10年,浏览器也从最早流行的NS到现在的FF3.IE7等等……前端开发工程师的职位也诞生了。近几年在web开发中,有个非常火的词——“框架”。YUI、JQuery、Prototype这些...
使用 YuiCompressor 为您缩小文件为您编译 LESS CSS 为您编译 CoffeeScript 通过自文档进行依赖配置简单的零代码,在包含原始源文件和缩小文件之间切换小 API,只有 4 个公共方法(包括构造函数) 为生产而建造;...
每每有新项目,第一步就是应当使用一个reset.css来重置样式。滥用不如不用,直接拿个现成的reset.css过来将导致后期各种离奇bug的发生。 所以最好还是自己写一个reset.css,并且要明白每一条 reset都是用来做什么的...
EXT框架2.0中文教程 为啥要掏钱学ext? www.extjs.com是从yui-ext发展来的一套ajax控件,在下认为它是当今最好用的js控件库了,非常有学习的价值。 如果没听说过extjs或者对extjs没有兴趣,请不要继续看下去。 ...