PHP技术,PHP研究及学习,Python学习,人工智能,大数据服务

PHP+Python » 前端设计 » [经典推介]CSS框架开发向导——定制你自己的CSS框架

[经典推介]CSS框架开发向导——定制你自己的CSS框架

此文被围观1097日期: 2012-05-22 分类 : 前端设计  标签:  ·····

不少CSS框架已经存在了一段时间,但大多数Web开发人员避免使用它们。 相反最有经验的开发者希望创建自己的CSS框架,提供个性化解决方案的优势,并减少对第三方的解决方案消极方面的依赖。虽然CSS框架,目的是加快网络开发,但是开发自己的全面的CSS框架,可能需要大量时间和精力。 本文将提供指导和精心挑选的资源,以协助你完成这一心愿。

开始之前
首先尝试一些流行的CSS框架或者至少去看看他们提供的文件:

•Blueprint
•Yet Another Multicolumn Layout (YAML)
•YUI Grids CSS Foundation
•960 Grid System

您可能还需要检查CSS框架的权威清单。

为什么要建立自己的CSS框架?
在现代的网页设计中CSS起着至关重要的作用,它是真的不是很难学。没有理由不去寻求一个捷径完成这个似乎一劳永逸的事情。

这里有一些具体原因/优点:

更有成效:
您将能够使用自己更有效的框架。

更好的设计兼容性:
您的设计将不依赖于如何制定一个框架,框架将自动支持你的设计的喜好。

更少的头痛的事:
你会不会继承错误或由其他人创建的缺陷。 当然,你自己的CSS框架可能有错误或缺陷,但你会更好地解决这些问题。

更大的灵活性:
当您的设计偏好与需求的有所变化时,您将能够轻松地对其进行修改。

额外的好处:
你不会花费您宝贵的时间来学习的框架,相反你的时间会花在学习更珍贵的东西:CSS。

让我们开始 – 分组及规则
最主要的反对意见是,开发自己的CSS框架将是复杂的任务。 CSS框架只不过是一个简单的在您的项目中您反复使用的CSS代码集合。优化和改善代码质量和效用的过程,需要额外的努力,技巧和时间。

让我们来看看什么类型的CSS代码是我们的项目中反复使用的。我们总是使用CSS布局,排版,表格和常用的如列表,图片等,我们还可以使用CSS来确保整体外观元素和感觉在所有Web浏览器中致。此外,我们有些人可能喜欢的组件(如菜单,图集,滑块等),我们在我们的项目反复使用; 包括它们在我们框架中的样式。

为了轻松维护您的框架的每一部分,将它分为多个CSS文件,例如:

reset.css
base.css
typography.css
layout.css
form.css
table.css
browser.css
print.css

上面的列表只是一个建议,你可以将你的框架分成任意数量的文件。 不过,为了从你的CSS框架获得最大利益, 你必须确保:

您已彻底测试所有的主流浏览器的输出
Litmus – 让兼容性测试更容易的在线服务
你已经遵循了CSS的最佳做法:
CSS标准和最佳实践
CSS最佳实践-洞察 行业最佳实践
简洁的代码,合理的结构和适当的文档
Styleneat -在线工具,组织和规范你的CSS -选择,子选择器和属性
用最少的class和ID
它已经过错误测试,并已通过W3C的CSS验证服务验证

以CSS Reset, Base & Typography作为坚实的基础
不同的浏览器各种元素有不同的默认样式(边距,边空,边界,轮廓等)。reset文件删除不一致的默认样式,并确保所有主要的浏览器会使用一致的样式渲染出你的网站。这里有两个最流行的CSS Reset,您可能会考虑在你自己的CSS框架中使用:

•Eric Meyer CSS Reset
•YUI Reset CSS

完成CSS Reset之后,下一个合乎逻辑的步骤是设置自己的Base,提供适用于所有主流浏览器一致的默认样式。这可能是在一个单独的所谓base.css文件中完成或与您Reset文件一起。这里有一些资源,协助您建立你的Base:

•Tripoli
•YUI Base CSS

文字排版(Typography)是紧随每个具体设计的,所以包括在一个CSS框架中似乎首当其冲被认为是讨厌的和不明智的想法。但有一个覆盖了所有的基础的文字排版文件,是一个真正的节省时间的手段。甚至在一段时间内,针对不同详细的样式,因不同风格的字体的需要,你可能最终不得不用更多的不同的排版文件。
这里有一些资源和工具来帮助您入门:

•Typetester
•Typechart
•Blueprint Typography
•CSS Type Set
•EM Calculator

布局(Layout,Layouts) – 寻找圣杯

布局是最棘手的,也许是一个CSS框架中最有争议的部分。 就像排版,布局随设计千变万化和您应该谨慎选择是否要让它成为你的CSS框架的一部分。你甚至可以考虑在你的框架中有一个以上布局文件的可能性。
这里是一个可能提供进一步援助的资源清单:

•In search of the One True Layout
•6 Keys To Understanding Modern CSS-Based Layouts
•Advanced CSS Layouts: Step by Step
•Five Simple Steps to Designing Grid Systems
•Fixed Width CSS Layouts
•Perfect Multi-Column CSS Liquid Layouts
•The ‘Holy Grail’ 3 Column Liquid Layout (Pixel Widths)
•CSS Layouts: A collection of 224 Grid and CSS Layouts
•CSS Layout Generator

Forms & Tables – 为什么不?

表单和表格二者均可以包括在你的base.css文件之中。不过,拥有更多的附加模板,将为您的设计能应对不同的需求增加很大的价值。
在作出最后决定之前,先看看这些资源:

•The Form Garden – A CSS Based Collection for Web Forms
•Fancy Form Design Using CSS
•Clean and Pure CSS FORM Design
•Blueprint Form
•A CSS Styled Table
•Top 10 CSS Table Designs

浏览器特定CSS
不幸的是,很多场合需要我们写一些浏览器特定CSS workarounds。 但是,CSS的hacks 或 workarounds可能会产生在CSS验证错误。为了克服这个问题,你应该在你的HTML文件使用条件标记包含browser.css。
这里有一些资源,供您参考:

•IE6 CSS Fixer: Starter Kit
•CSS Hacks
•Developing CSS for IE6 and 7
•Explorer Exposed!

打印样式
一个单独的打印样式表将极大地改善您网站的可用性,特别是对大量的内容页面。
以下是一些额外的指导资源:

•CSS Media Types Create Print-Friendly Pages
•Print Stylesheet – The Definitive Guide

你还可以做什么?
你可以做更多的事情,这是背后即是要有你自己的CSS框架的主要思路。 您可以创建许多抽象的CSS文件,只要你喜欢,如:

component.css (组件)
这可能包括CSS常用的成分,比如下拉菜单,工具提示等
application.css (应用)
这可能拥有多个版本针对您经常设计的每一个不同类型的应用程序。 例如:WordPress,Drupal,BlogEngine.Net等。

最后 – 使用自己的CSS框架
使用你的框架就是简单地包含所有必需的文件在你的HTML之中。但包含一些不必要的CSS文件意味着额外的HTTP请求。为了避免这种情况你应该首先将所有的文件合并(browser.css和print.css文件除外),然后包含这个新的CSS在你的项目文件中。

为了保持本文的短小,只提供了一些有限的资源,所以请随意寻找更好的替代品,并与我们其他人分享您的意见。
您也可以在快速浏览一下:

•Definitive List of CSS Frameworks
•List of Really Useful Tools for CSS Developers
•CSS3 Unleashed – Tips, Tricks & Techniques

——————————————————————————————
发表于 April 1st, 2009 原作: Saud Khan
原文网址:http://www.w3avenue.com/2009/04/01/guidelines-for-developing-your-own-css-framework/

译者注:这实际是一篇老文章了。但至今看起来仍然让人兴奋。主要是在于,此文章不在于让你学会什么,而在于指导你做什么。自 OO CSS(面向对象CSS)概念产生以后,随后的老牌的OOCSS框架,BulePrint框架面世,到现在,数10种CSS框架,让你无法确定该选择哪一个。
另一方面,选择以后,必然会有后悔。正如上文所说。所以,多数人的愿望是:自己写一个。
当然,能按本文写一个象样的CSS框架,按本文所说,初学者一样能做到。因为,本文让你参考的都是权威,经典,名篇。当然,另一方面,如果你真的有一定的CSS功底,那就更是水到渠成。所以,希望自己写的,但愿你是至少读过《精通CSS》一书的。


本站使用ThinkPHP框架开发读图网主题,目前托管在阿里云,图片由读图网提供. 蜀ICP备12031064号

Copyright © 2011-2018adophper.com All Rights Reserved.