日期:2014-05-17  浏览次数:20639 次

强悍的CSS工具组合:Blueprint, Sass, Compass(z)
掌握CSS是每个Web开发者的基本要求,虽然CSS本身并不复杂,但怎样写出支持所有主流浏览器(特别是IE)的CSS,以及在大型网站中如何有序地组织好CSS结构却是一个相当棘手的问题。我更多的是一个开发者,而不是一个设计师,却不幸花了大量时间处理CSS这些棘手问题,如果能有一些工具能帮我处理这些问题,那将很有意义。经过一段时间的搜索和研究,还真发现了几个很棒的工具,感觉真是相见恨晚,与大家分享之。



Blueprint CSS Framework



刚才说过了,处理浏览噐的不一致性是很困难的事情。每开始一个新项目,我们都需要做一些重复的事情,比如需要将一些元素的padding和margin重置为0,设置某些元素的默认样式,定义一些通用的样式等,这些由于浏览器之间的不一致而变得复杂。有了blueprint ,你就不用再担心这些啦,blueprint已经非常完美的为你做好这些事情了。这还只是blueprint做的一小部分事情,它还定义了一些form的样式,另外它带一些插件。blueprint还是一个基于网格(grid)布局的框架。在我看到blueprint之前还不知道网格布局已经这么流行了。网格布局就是把浏览器内容区域划分一些固定的大小的网格,网页中元素的定位都向网格靠齐。blueprint默认设置网页的宽度为950像素,并它分成24个网格,每个网格宽度为30像素,每个网格之间的距离为10像素。







在blueprint下布局非常容易,我们来看如何使用blueprint来做非常常见的三列布局:



Html代码
<html> 
<head> 
    <link rel="stylesheet" href="css/blueprint/screen.css" type="text/css" media="screen, projection"> 
    <link rel="stylesheet" href="css/blueprint/print.css" type="text/css" media="print">    
    <!--[if lt IE 8]><link rel="stylesheet" href="css/blueprint/ie.css" type="text/css" media="screen, projection"><![endif]--> 
</head> 
<body> 
<div class="container"> 
    <div class="span-24 last"> 
        Header  
    </div> 
    <div class="span-4"> 
        Left sidebar  
    </div> 
    <div class="span-16"> 
        Main content  
    </div> 
    <div class="span-4 last"> 
        Right sidebar  
    </div>      
    <div class="span-24 last"> 
        Footer  
    </div> 
</div>      
</body> 
</html> 
<html>
<head>
        <link rel="stylesheet" href="css/blueprint/screen.css" type="text/css" media="screen, projection">
        <link rel="stylesheet" href="css/blueprint/print.css" type="text/css" media="print">     
        <!--[if lt IE 8]><link rel="stylesheet" href="css/blueprint/ie.css" type="text/css" media="screen, projection"><![endif]-->
</head>
<body>
<div class="container">
        <div class="span-24 last">
                Header
        </div>
        <div class="span-4">
                Left sidebar
        </div>
        <div class="span-16">
                Main content
        </div>
        <div class="span-4 last">
                Right sidebar
&nbs