CSS Framework 960 Grid System (收)

CSS框架 :960 Grid System ?官網:http://960.gs/

?什么是框架?框架是一種你能夠使用在你的web項目中概念上的結構。CSS框架一般是CSS文件的集合,包括基本風格的字體排版,表單樣式,表格布局等等,比如:

??? * typography.css 字體排版規則
??? * grid.css 表格布局
??? * layout.css 布局
??? * form.css 表單
??? * general.css CSS常規設置

下面是一些不錯的CSS框架,推薦。


Elements

Blueprint CSS

Blueprint是一個CSS框架,它的目標是減少你的CSS開發時間。它提供給你強大的CSS基礎來創建你的項目,包括易于使用的grid,有效的字體排版,以及可打印的stylesheet .

Elements

960 Grid System

?一、960的奧妙

????? 從數學著手: 960可以分解為2的6次方乘以3和5, 這使得960可以分割成以下寬度的整數倍:

2, 3, 4, 5, 6, 8, 10, 12, 15, 16, 20, 24, 30, 32, 40,48, 60, 64, 80, 96, 120, 160, 192, 240, 320, 480

共26種(26 = 7 * 2 * 2 – 2, 減去2是去掉1和960自身),我們標記為:

N(960) = N(2^6 * 3 * 5) = 26

根據上面的算法,可以得到:

N(360) = N(2^3 * 3^2 * 5) = 22N(480) = N(2^5 * 3 * 5) = 22N(720) = N(2^4 * 3^2 * 5) = 28N(750) = N(2 * 3 * 5^3) = 14N(800) = N(2^5 * 5^2) = 16N(960) = N(2^6 * 3 * 5) = 26N(1000) = N(2^3 * 5^3) = 14N(1024) = N(2^10) = 9N(1440) = N(2^6 * 3^2 * 5) = 34N(1920) = N(2^7 * 3 * 5) = 30

從上述算法我們可以得出以下結論:

要使得N(width)最大,width的取值有兩個系列: A系列: …, 320, 720, 1440, … B系列: …, 480, 960, 1920, … N越大,可組合的寬度值就越多。

????? 目前絕大多數顯示器都支持 1024 x 768 及其以上分辨率,而960恰好是1024 x 768 分辨率下最靈活也是最合適的尺寸,這些條件決定了960成了目前設計中最完美的尺寸。(PS:此部分內容大多摘自:960 Grid System 研究)

二、960網格系統簡介

本質:

960 Grid System?是一套基于寬度為 960px CSS 框架,它為網頁布局提供了通用的尺寸設置,它提供了兩種不同的尺寸布局:12列和16列,它們可以獨立使用,也可以一起使用。

尺寸:

12列的布局,將總寬分成12份,每份的寬度是60px,而16列的布局分成16份,每份的寬度是40px,每部分左右邊距都是10px,從而每列產生20px的空隙。

目的:

該系統以快速原型開發為出發點,但同時也能很好地集成到生產環境中去。它同時提供了打印布局、設計布局和一個能提供一致尺寸的 CSS 文件。

?960 Grid System是一個非常棒的布局輔助設計系統,以960PX為基準寬度提供了12列和16列兩種布局模式(PS:目前官方已經提供了24列的布局模式,相信作者以后還會提供更多的布局模式)。

??????1:alpha與omega

????? 960 Grid System的布局寬度為960PX,但由于每列左右均由10PX的margin(外補丁),因此內容寬度實際為940px。

/*alpha:用于清除左邊10px的marginomega:用于清除右邊10px的margin*/

????? PS:從作者取alpha與omega這兩個名字可以想象一下或許作者很熱愛希臘文化。alpha(α)在希臘字母表里,它是第一個字母,讀作“阿爾法”(阿拉法),代表開始;omega(γ)在希臘字母表里,它是最后一個字母,讀作“歐美噶”(俄梅嘎),代表終了。

?????2:prefix_XX與suffix_xx

/*用于在每個單元網格的前面或后面添加空白的列(欄)*//*用法:<div class="prefix_15 grid_1">IT北瓜</div>*/

??????3:clear與hr

/*用于清除層的浮動*//*用法:<div class="clear"></div>*//*但假如你查看過官網主頁的源代碼你會發現,作者用的是<hr />*//*用法:可參考官網主頁的源代碼<hr />*/

?????4:push_xx與pull_xx

/*這是2009-06-29更新新增的類,用于重新定制布局順序*//*用法:引用官網主頁源代碼*/<h1 class="grid_4 push_4">    960 Grid System</h1><!-- end .grid_4.push_4 --><p id="description" class="grid_4 pull_4">    <a href="files/960_download.zip">Download</a> &larr; Templates for <a href="http://www.adobe.com/products/fireworks/">Fireworks</a>, <a href="http://www.adobe.com/products/indesign/">InDesign</a>, <a href="http://www.inkscape.org/">Inkscape</a>, <a href="http://www.adobe.com/products/illustrator/">Illustrator</a>, <a href="http://www.omnigroup.com/applications/omnigraffle/">OmniGraffle</a>, <a href="http://www.adobe.com/products/photoshop/">Photoshop</a>, <a href="http://office.microsoft.com/en-us/visio/default.aspx">Visio</a>, <a href="http://www.microsoft.com/expression/products/Design_Overview.aspx">Expression Design</a>. Sketch PDF. CSS code. The 960.css file is 5.4 KB. View <a href="http://bitbucket.org/nathansmith/960-grid-system/">repository</a>.</p><!-- end #description.grid_4.pull_4 --><hr /><div class="grid_6">    <p>        <a href="http://www.spry-soft.com/grids/"><img src="img/tool_css.gif" alt="Custom CSS generator" width="460" height="60" /></a>    </p></div><!-- end .grid_6 --><div class="grid_6">    <p>        <a href="http://gridder.andreehansson.se/"><img src="img/tool_bookmark.gif" alt="Grid overlay bookmark" width="460" height="60" /></a>    </p></div><!-- end .grid_6 -->

??????5:container_xx與grid_xx

/*這是該系統最基本最重要的用法,其中xx代表列數*//*用法:*/<div class="container_12">    <div id="sidebar" class="grid_2">sidebar</div>    <div id="content" class="grid_10">        <div id="main_content" class="grid_6 alpha">main content</div>        <div id="photos" class="grid_2">photo’s</div>        <div id="advertisements" class="grid_2 omega">advertisement</div>        <div class="clear"></div>    </div>    <div class="clear"></div></div>

以上轉載自IT北瓜

鏈接地址:?http://imleeo.com/special-series/960-grid-system-introduction.html

首先,你需要學習關于”如何讓框架工作”。你可以通過自己的嘗試來學習,不過我仍然會在這里為大家進行講解,那就開始吧。

不要編輯960.css

先說一點需要注意的:不要編輯960.css文件,如果你修改了它,那么你今后將無法更新這個框架。

讀取網格

在我們使用外部文件中的CSS代碼之前,首先要在我們的HTML文件中調用它們。像這樣調用:

<link rel=”stylesheet” type=”text/css” media=”all” href=”path/to/960/reset.css” />
<link rel=”stylesheet” type=”text/css” media=”all” href=”path/to/960/960.css” />
<link rel=”stylesheet” type=”text/css” media=”all” href=”path/to/960/text.css” />

當我們調用好它們以后,我們要調用自己的CSS文件了。例如,你也許會將你的CSS文件命名為style.css或site.css或者其它什么的。這樣調用它:

<link rel=”stylesheet” type=”text/css” media=”all” href=”path/to/style.css” />

Containers(容器)

在960框架中,你可以選擇兩種類名為.container_12 和 .container_16的容器。這兩種容器都是960px的寬度(這就是為什么叫做960 grid),但他們的不同之處是它們包含不同數量的列。顧名思義,.container_12的容器被分為12列,而 .container_16被分為16列。這兩種960px寬的容器都是水平居中的。

Grids (網格)/ Columns(列)

你可以選擇很多種不同的列寬組合,不過在這兩種容器中是有所不同的。你可以通過打開960.css來了解這些寬度,但這對于設計一個網站并沒有什么必要。在這里暴風彬彬將一個很有用的技巧讓你使用框架更加容易。

例如:如果你想在你的容器中僅使用兩列(分別是主內容區/側邊欄),你可以這樣做:

<div class=”container_12″>
<div class=”grid_4″>sidebar</div>
<div class=”grid_8″>main content</div>
</div>

看到上面的代碼你也許已經明白,不過我還是要講一下。也就是說你在container_12這個容器中使用了grid_4和grid_8兩列,4+8恰好等于12!明白了嗎?使用網格系統的好處之一就是你不用去計算沒列的寬度到底是多少,省去了很多運算。

下面讓我們看看如何編寫四列布局:

<div class=”container_12″>
<div class=”grid_2″>sidebar</div>
<div class=”grid_6″>main content</div>
<div class=”grid_2″>photo’s</div>
<div class=”grid_2″>advertisement</div>
</div>

正如你看到的,這個系統工作得很好。如果你嘗試使用你的瀏覽器讀取他的話,你會發現有一些不對勁的地方。不過不要緊,那正是我們下一個話題要討論的。

Margins

默認情況下,每列之間都會存在一些margin。每個grid_(這里插入數值)類都有10px的左margin和右margin。也就是說兩列之間的margin值是20px。

20px的margin能讓布局保持應有的留白并看上去更平滑,這也是我喜歡960 grid System的原因之一。

在上面的例子中,我們將它使用瀏覽器讀取時出現了一些問題,現在我們來修復它。

問題在于每個列都包含左margin和右margin,但是最左面的列不應該有左margin,最右面的列不應該有右margin。(夠羅嗦!)下面是解決方法:

<div class=”container_12″>
<div class=”grid_2 alpha”>sidebar</div>
<div class=”grid_6″>main content</div>
<div class=”grid_2″>photo’s</div>
<div class=”grid_2 omega”>advertisement</div>
</div>

你僅需添加alpha類來去除左margin,添加omega類去除右margin。好了,現在我們的布局已經可以完美在瀏覽器中對齊了。(是的,包括IE6)

Styling(添加樣式)

事實上,你已經掌握了如何使用960框架創建基本的網格布局了。不過你也許還想為自己的布局添加一些樣式。

<div class=”container_12″>
<div id=”sidebar” class=”grid_2 alpha”>sidebar</div>
<div id=”content” class=”grid_6″>main content</div>
<div id=”photos” class=”grid_2″>photo’s</div>
<div id=”advertisements” class=”grid_2 omega”>advertisement</div>
</div>

由于CSS使用優先級的形式來覺得如何解釋樣式,而id要比class的優先級高。這樣我們就可以在我們的獨立CSS文件中以id選擇符創建個性化的樣式了。如果湊巧有的樣式屬性與960相同但值又不同,瀏覽器會優先選擇你的CSS文件中的樣式。當然,如果您感興趣,也可以看看上面的實例添加樣式后的實際效果。

英文原文:960 CSS Framework – Learn the Basics

本框架代碼適用于所有由yahoo評為A級(A-grade)的瀏覽器,yahoo對瀏覽器的評定情況如下圖所示。?

960-grid-system-093.gif

轉載于:https://www.cnblogs.com/keke/archive/2011/03/30/1999969.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/448194.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/448194.shtml
英文地址,請注明出處:http://en.pswp.cn/news/448194.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

使用線程本地存儲

線程本地存儲&#xff08;TLS&#xff09;使同一進程的多個線程能夠使用由TlsAlloc函數分配的索引來存儲和檢索線程本地的值。在此示例中&#xff0c;在進程啟動時分配索引。當每個線程啟動時&#xff0c;它會分配一個動態內存塊&#xff0c;并使用TlsSetValue函數在TLS槽中存儲…

發動機的工作原理,你知道嗎?

http://auto.jxedt.com/info/5352.htm 發動機是汽車的動力裝置&#xff0c;性能優劣直接影響到汽車性能&#xff0c;發動機的類型很多&#xff0c;結構各異&#xff0c;以適應不同車型的需要。按發動機使用燃料劃分&#xff0c;可分成汽油發動機和柴油發動機等類別。按發動機汽…

官方文檔: Dubbo 框架設計、模塊說明、依賴關系

以下內容全文轉自 apache 官方 dubbo文檔&#xff1a;http://dubbo.apache.org/en-us/docs/dev/design.html 框架設計 圖片描述&#xff1a; 淺藍色背景的左側區域顯示服務用戶界面&#xff0c;淺綠色背景的右側區域顯示服務提供者界面&#xff0c;中心區域顯示兩個側面界面。…

那些花兒

今天上海下雨了&#xff0c;心緒也變得低落&#xff0c;突然很想念宿舍的姐妹。畢業后就自作聰明地和她們失去了聯系&#xff0c;今天去QQ群遛了一圈。虹結婚了&#xff0c;敏還是活得那么瀟灑&#xff0c;笑也在努力地生活... 人生啊&#xff01;總是在向前走&#xff0c;遇…

CreateRemoteThread函數

CreateRemoteThread函數 創建在另一個進程的虛擬地址空間中運行的線程。 使用CreateRemoteThreadEx函數創建在另一個進程的虛擬地址空間中運行的線程&#xff0c;并可選擇指定擴展屬性。 語法 HANDLE CreateRemoteThread(HANDLE hProcess,LPSECURITY_ATTRI…

防火墻問題 Linux系統 /etc/sysconfig/路徑下無iptables文件

虛擬機新裝了一個CentOs7&#xff0c;然后做防火墻配置的時候找不到iptables文件&#xff0c;解決方法如下&#xff1a; 因為默認使用的是firewall作為防火墻&#xff0c;把他停掉裝個iptable systemctl stop firewalld systemctl mask firewalld yum install -y iptables yum …

如果風 知道 ... 如果云 知道 ...

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 //《心靈之音》----- Bandari 來自酷狗。 一直很喜歡聽歌&#xff1a; 喜歡默默的聽、一個人安安靜靜的聽、長長久久的聽、聽得忘乎所…

切記!這樣洗頭最傷身

各種的忙碌已經成為了現代人生活中的一個標志&#xff0c;每天的加班&#xff0c;玩樂到深夜&#xff0c;游戲等&#xff0c;都讓不少的人的洗澡時間都只能在臨睡前&#xff0c;而女人洗頭也只能在晚上臨睡之前洗。如果可以有足夠的時間&#xff0c;等待頭發完全干透了之后&…

可以供MFC調用的,QT實現的DLL(qtwinmigrate實現)

MFC和QT的消息循環機制不同&#xff0c;所以&#xff0c;要讓QT寫的DLL可以供MFC調用&#xff0c;要做一點特殊的處理 #include <qmfcapp.h> #include <qwinwidget.h> #include <QtGui>#include <QtGui/QMessageBox> #include <windows.h> #incl…

離合器的操作技巧

學車其實不難&#xff0c;學車最基本的幾個操作&#xff0c;打方向盤、踩離合、踩剎車、換檔位都是學員需要必學的基本操作&#xff0c;在網絡駕校上有學員反應&#xff0c;對離合器的操作比較難&#xff0c;經常錯誤操作造成熄火等現象&#xff0c;現在瀘州駕校論壇小編整理了…

Linux 上 安裝 nginx、 阿里云服務器上安裝 nginx

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 Docker 方式安裝見另一文&#xff1a;Docker 方式安裝 Nginx 、阿里云服務器上裝 Ngnix 1. gcc 安裝 安裝 nginx 需要先將官網下載的源…

CSDN-markdown編輯器使用說明

歡迎使用Markdown編輯器 你好&#xff01; 這是你第一次使用 Markdown編輯器 所展示的歡迎頁。如果你想學習如何使用Markdown編輯器, 可以仔細閱讀這篇文章&#xff0c;了解一下Markdown的基本語法知識。 新的改變 我們對Markdown編輯器進行了一些功能拓展與語法支持&#x…

本地Android源代碼庫下載源碼

1. 安裝repo 新建放置repo的bin目錄 $ mkdir ~/bin $ echo "export PATH~/bin:\$PATH" >> ~/.bashrc$ source ~/.bashrc 獲取repo并賦予可執行權限&#xff08;或者參考google官方網站&#xff09; $ curl https://storage.googleapis.com/git-repo-downloads/…

解決: Spring Boot報錯 This application has no explicit mapping ... a fallback

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 啟動spring boot然后訪問頁面的時候&#xff0c;出現如下錯誤&#xff1a; Whitelabel Error PageThis application has no explicit m…

三種錢非常奧妙 花越多就賺越多

世界上有三種錢非常奧妙&#xff0c;你花得越多就賺得越多。這是學校老師不會教的事&#xff0c;讓我們看看&#xff1a; 第一種錢&#xff1a;投資自己&#xff0c;自我成長&#xff0c;學習的錢一定要花&#xff01; 如果我們把世界首富比爾.蓋茨從美國抓到非洲&#xff0c…

#pragma once 與 #ifndef比較分析

為了避免同一個文件被include多次&#xff0c;C/C中有兩種方式&#xff0c;一種是#ifndef方式&#xff0c;一種是#pragma once方式。在能夠支持這兩種方式的編譯器上&#xff0c;二者并沒有太大的區別&#xff0c;但是兩者仍然還是有一些細微的區別。 方式一&#xff1a; #ifn…

中醫:看腳十秒鐘可知身體疾病

中醫認為&#xff0c;自測疾病有很多方法&#xff0c;如通過身體部位可自測疾病&#xff0c;還可通過疼痛自測疾病等等。在這里&#xff0c;我們主要講如何通過腳自測疾病。也許&#xff0c;許多人不太在意自己的腳部&#xff0c;是最不受“照顧”的一個身體部位。然而&#xf…

Springcloud 引導上下文

SpringCloud為我們提供了bootstrap.properties的屬性文件&#xff0c;我們可以在該屬性文件里做我們的服務配置。可是&#xff0c;我們知道SpringBoot已經為我們提供了做服務配置的屬性文件application.properties&#xff0c;那么這兩個配置文件有什么區別呢&#xff1f;在Spr…

Springboot 項目中過濾器的使用

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1. 編寫過濾器類&#xff1a; package gentle;import javax.servlet.*; import javax.servlet.annotation.WebFilter; import javax.se…

C++ 中 new 操作符內幕:new operator、operator new、placement new

一、new 操作符&#xff08;new operator&#xff09; 人們有時好像喜歡有意使C語言的術語難以理解。比方說new操作符&#xff08;new operator&#xff09;和operator new的差別。 當你寫這種代碼&#xff1a; string *ps new string("Memory Management");你使…