bootstrap 12栅格格(2K4+4K9)(4*3)代表什么意思

为什么网页设计要使用栅格化_百度知道
为什么网页设计要使用栅格化
我有更好的答案
研究网页栅格系统前,来看一组数据: 网站 首页页面宽度 px Yahoo! 950 淘宝 950 MySpace 960 新浪 950 网易 960 Live Search 958 搜狐 950 优酷 960 AOL 960 上面列举的都是Alexa全球排名前100的站点,它们的首页宽度为950px/960px. 除了微软的Live Search, 这些站点有个共同特点:页面结构较复杂,都可以认为是门户型网站。 再来看看Google, YouTube, Facebook, Flickr!, eBay等知名站点,它们的首页宽度没什么固定规律,共同的特点是:功能专一,页面结构相对简单。 根据上面的简单分析可以认为:当搭建页面结构复杂的门户型网站时,开发工程师们不约而同地都选择将页面宽度定为950px/960px. 这是一件很有趣的事情,为什么要选择这个宽度呢?这个宽度值究竟有什么魔力? 神奇的960 设计师们对苹果情有独衷。在 1024 x 768 的分辨率下,打开Firefox: 自然状态下,Firefox窗体的大小约为 974 x 650. 减掉左右两边7px的边框,网页的实际大小为上图中的红色部分,高宽为 960 x 650. 有趣的960就这样出现了。是的,可以认为一切就这么简单。栅格系统最早出现在平面设计领域,设计师们爱用苹果,苹果下浏览器的默认宽度为960px, 于是960就这么“自然”地出现了。 数字背后的奥妙 上面的“自然”出现,细究自然是不让人信服的。苹果系统的设计者们在没有喝醉酒的情况下选择了960,而不是其它什么1000之类的整数,自然另有奥妙。 科学界有很多问题都可以归结到数学问题上,我们也从数学着手: 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) = 22 N(480) = N(2^5 * 3 * 5) = 22 N(720) = N(2^4 * 3^2 * 5) = 28 N(750) = N(2 * 3 * 5^3) = 14 N(800) = N(2^5 * 5^2) = 16 N(960) = N(2^6 * 3 * 5) = 26 N(1000) = N(2^3 * 5^3) = 14 N(1024) = N(2^10) = 9 N(1440) = N(2^6 * 3^2 * 5) = 34 N(1920) = N(2^7 * 3 * 5) = 30 根据直觉(严格证明也不难,不过还是留给数学系的学生去证明吧),我们得到一个有趣的结论: 要使得N(width)最大,width的取值有两个系列: A系列: …, 320, 720, 1440, … B系列: …, 480, 960, 1920, … N越大,可组合的宽度值就越多。对栅格系统来说,这意味着越灵活! 目前绝大多数显示器都支持 1024 x 768 及其以上分辨率。为了有效的利用屏幕宽度同时保证栅格的灵活度,可以看出960是非常合适的。这样,在目前主流显示器下,960就成为网页栅格系统中的最佳宽度了。(也许不久的将来,将会流行1440)首先澄清一个应用场景问题。研究(1)中指出,对于结构复杂的网站,不少设计师们喜欢采用960固定宽度布局。但要注意的是,960并不是万能钥匙,大部分网站没有也不需要栅格系统。Amazon采用的是宽度自适应布局,最大限度的呈现信息。Google更是简简单单,主题部分就一个列表。eBay的页面非常简洁,商品页面宽度自适应,信息自然流畅,噪音少,购物很踏实。类似的站点还有很多,对于这些站点来说,宽度自适应布局更受青睐。有个很有意思的网站是Yahoo!, 看起来是固定宽度布局,实际上在CSS中只要去掉一行,就能摇身一变自适应宽度了:以下为引用的内容:#page { width: 70}为什么Yahoo!最后选择了定宽布局呢?这很可能是因为定宽布局比宽度自适应布局更容易控制。对于结构复杂的网站来说,可维护性和可扩展性非常重要。Yahoo!是以信息展示为主的门户型网站,960的宽度对于信息的阅读比较友善(Joe Clark写了一篇屏幕阅读时有关行长的有趣文章)。种种因素使得Yahoo!最后采用了定宽布局(Tommy Olsson总结了每种布局设计的优缺点)。这里将只关注定宽布局,适用的场景是搭建复杂的门户型网站。对于宽度自适应布局和相应的栅格系统,暂不讨论(根据实现的技术手段不同,宽度自适应布局又分为流体布局和弹性布局。我个人蛮喜欢弹性布局,以后有时间再研究)。好了,已经将范围缩小到定宽布局的网页栅格系统,那我们开始吧。并不遥远的750 还记得800×600的显示器不?虽然才时隔几年,感觉却好像是上个世纪的事了。Mark Boulton做了最早的探索:将750分割成均等的6份,这就形成了栅格系统,稍加组合划分就形成了两栏布局和三栏布局。Mark Boulton还研究了Gutter(垂直栏之间的间隙)对栅格的影响,有兴趣的可以阅读原文,或者跟着我往下看吧,下面将详细阐述。几个术语和一个公式一个标准的栅格系统,包括以下部分:将Flowline的总宽度标记为W, Column的宽度标记为c, Gutter宽度标记为g, Margin的宽度标记为m, Column的个数标记为N, 我们可以得到以下公式:W = c * N + g * (N - 1) + 2 * m一般来说,Gutter的宽度是Margin的两倍,上面的公式可以简化为:W = c * N + g * (N - 1) + g = (c + g) * N将c+g标记为C, 公式变得非常简单:W = C * N上面的公式就是栅格系统的基础,很简单吧。950的来历具体应用时,Margin其实是一个空白边,从视觉上看并不属于总宽度。不少栅格设计里习惯性地设定Gutter为10px, 这样Margin就是5px. 当W为960,分割成6列时,栅格如下图:上图的处理是左右Margin各为5px. 也可以将Margin集中放在一边,比如右边:无论Margin放在何处(这只影响技术实现,不影响设计),我们真正要关注的是去除Margin之后的部分:这就是我们要真正关注的950!将W的含义变为去除Margin的总宽度,公式变化为:W = N * C - g将上面的公式实例化一下:950 = 12 * 80 - 10950 = 16 * 60 - 10950 = 24 * 40 - 10这就形成了960蛋糕的三种常见切法。12 x 8016 x 6024 x 40上面三种切法,N越大,灵活度越高。可以根据网页的实际复杂度来选用对应的切法。在960 Grid System首页中,展示了12 x 80的应用:我们来看下 研究(1)中开头列举的网站的栅格应用情况。Yahoo!是很标准的 24 x 40 栅格:淘宝网目前只有商城上部分使用了栅格系统(大的两栏布局遵守了 24 x 40 的栅格化,主体部分使用的另一套740的栅格划分):网易很不错,采用的是 16 x 60 的栅格系统:研究(1)中的其它站点都没有真正严格地采用栅格系统。栅格系统的优势上面的“发现”是让人有点沮丧的。目前严格采用栅格系统的站点非常少,为什么我们还要努力的让网页栅格化呢?栅格系统具有以下优势:能大大提高网页的规范性。在栅格系统下,页面中所有组件的尺寸都是有规律的。这对于大型网站的开发和维护来说,能节约不少成本。基于栅格进行设计,可以让整个网站各个页面的布局保持一致。这能增加页面的相似度,提升用户体验。对于设计师们来说,灵活地运用栅格系统,能做出很多优秀和独特的设计。(详见《超越CSS》一书)对于大型网站来说,我相信栅格化将是一种潮流和趋势。下面讨论栅格系统中的黄金分割。黄金分割黄金分割可以归结为数学问题:对于长度为1的线段,将其分成两部分 x 和 1 - x, 使得:x / 1 = (1 - x) / x化为简单的二次方程:x^2 + x - 1 = 0正数解为:x = (sqrt(5) - 1) / 2 ~= 0.618这就是黄金分割。这个比例不仅仅出现在诸如绘画、雕塑、音乐、建筑等艺术领域,在管理、工程设计等方面也有着不可忽视的作用。 (这是个自然界的魔数,类似的还有真空光速、普朗克常数、精细结构等等,感兴趣的Google吧)在平面设计领域,黄金分割点被广泛采用。比如下面这种图:数一数上面有多少黄金分割?对于960栅格,实际宽度是950. 两栏布局时,黄金分割为:对于 24 x 40 的情景,最接近黄金分割的两栏布局是 350 : 590, 栏数比例为 9 : 15. 但实际使用时,因为窄栏经常用来做导航或放辅助信息,并不需要350px这么宽。因此实际情况下经常被采用的布局是:上面讲的都是宽度方向上的栅格化,下面我们看看高度方向上如何应用。高度方向上的栅格还记得研究(1)中那张红红的很刺眼的图吗?注意高度值560也是很神奇的。N(560) = N(2^4 * 5 * 7) = 18560 / 960 ~= 0.583N(560)比较大,同时可以让高宽比接近黄金分割。针对560, 我们采用 14 x 40 栅格:这样,我们就在宽度和高度两个方向上都实现了栅格化。淘宝的首页目前尚未严格遵守栅格系统,如果重构的话,宽度方向可以考虑采用下面的栅格布局(只考虑页面主体部分,忽略高度的比例):(图1) 纷乱的高度世界我们来看下图1左上角。左上角部分目前的宽度为256px, 重构的话可以将宽度缩小到230px以符合栅格(不可避免的要调整内容,比如人气宝贝中将只能放下3张图片)。来仔细看下高度方向:(图2)高度方向的布局是:90 : 117 : 100, 第一个间隔是8, 总高度为325. 很明显,高度方向没有任何栅格化的迹象。实际上,即便是严格遵守栅格系统的Yahoo!首页,高度方向上也没有严格栅格化。这究竟是为何?一切皆有可能我们缩小关注点:(图3)上图中,图像的大小是70 x 70, 刚好是24列960栅格系统两列的宽度。对于右边的文字,采取了如下样式:font-size: 12line-height: 150%; /* 12 x 150% = 18px */中文字体是宋体,line-height的计算值是18px. 注意图3中文字部分可视区域的高度为65, 上下各有4px和1px的间隙。为什么会产生这么奇怪的间隙呢?我们来看下图:(图4)从上图中我们可以得知,12px的宋体中文字,实际高度只有11px. line-height减去11多出来的高度,则“均匀”分布在上下间隙中(如果多出来的高度为偶数,则上下均分;为奇数时,上面比下面多1px)。这样,对于70px的高度来说,要布局4行文字时,假设行高多出来的上半部分为x, 下半部分为y, 在最理想的情况下,应该满足以下公式:11 * 4 + 4 * x + 3 * y = 70x = y 或 x = y + 1不难推出,x最理想的整数解为4. 从而line-height为 4 + 11 + 3 = 18. 因此:对于24列960栅格系统来说,如果要在高度方向上实现栅格,font-size为12px时,line-height的最佳取值是18px(150%).追求完美点话,还可以将文字部分margin-top: -1px, 使得65上下的间隙为3和2.至此,我们可以初步判断:高度方向上是有可能严格栅格化的。一切皆有可能!然而,现实总那么残酷(图5)上图中的标题高度为22, 这在24列960栅格系统中是无法对齐的。而且总高度为100, 在24列960栅格系统中也不存在(110才可以)。或许高度方向上我们可以细化行宽为20, 但依旧没法解决上面两个问题(22是明显不能解决的,而对于100px的高度,也无法通过细化行宽来解决。可选高度永远是10的奇数倍,如果进一步细化,小于10后,会变得非常繁琐,没什么实际应用价值)宽度世界里会好些吗(图6)上面是Yahoo!首页上的两个小模块,我都不想去标注模块里面的布局宽度了(因为一点都不符合24列960栅格系统)。宽度世界里,和高度世界一样充满希望但现实却残酷无比。银弹是不存在的栅格系统是美好的。但如果我们一味地追求将所有设计都栅格化(必须承认我曾有这个幻想),则立刻会陷入地狱一般的黑暗中。这篇文章中的艰难尝试(我分析了20多个小模块),让我突然醒悟到一个粒度问题:任何设计都有适用范围,超出最佳适用范围,强行使用只会带来无尽的烦恼。对于栅格系统(这里指所有栅格系统,包括多种栅格系统混合使用的情景)来说,我觉得以下场景非常适合:页面的总体宽度布局,比如两栏、三栏等布局一些固定区块的尺寸,比如广告图片的尺寸区块之间的间距,可以参考栅格系统的槽宽(Gutter)一些可以栅格化的小区域,比如图3中的例子,暗合栅格往往能简化布局上的考虑除了上面这些应用场景,强行使用栅格系统,往往会束手束脚,适得其反。这篇文章的目的,就是尝试用最啰嗦最费神貌似很科学实际很无聊的分析来指出栅格系统应用时的粒度问题。在粒度问题上达成一致后,下一篇中我们将讨论栅格系统的技术实现,最后一篇则讨论栅格系统的压轴好戏:模块化开发。前三篇文章中,明确了栅格系统的设计细节和适用范围。这一篇将集中讨论960栅格系统的技术实现。Blueprint的实现Blueprint是一个完整的CSS框架,栅格系统是它的一部分功能。我们来看demo页面:以上三栏布局的代码为:&style type=&text/css&& .container { margin: 0 width: 950px } .span-8 { float: margin-right: 10px } div.last { margin-right: 0 } hr { clear: height: 0; border: none }&/style&&div class=&container&& &div class=&span-8&&&/div& &div class=&span-8&&&/div& &div class=&span-8 last&&&/div& &hr /&&/div&上面是基本功能,Blueprint还支持append-n, prepend-m, border等“高级”功能,这些就不细说了
毅衣公司京东小二
为您推荐:
其他类似问题
您可能关注的内容
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。【图文】栅格数据分析_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
栅格数据分析
阅读已结束,下载本文到电脑
想免费下载本文?
登录百度文库,专享文档复制特权,积分每天免费拿!
你可能喜欢必须使用HTML5文档类型
Bootstrap使用的某些HTML元素和CSS属性需要文档类型为HTML5 doctype。因此这一文档类型必须出现在项目的每个页面的开始部分。
&!DOCTYPE html&
&html lang="en"&
排版和链接
Bootstrap 为屏幕、排版和链接设置了基本的全局样式。尤其是,我们:
移除了body的 margin
设置了 body 的背景颜色 background-color:
使用 @baseFontFamily、@baseFontSize 和@baseLineHeight 属性作为我们排版的基础
通过 @linkColor 设置全局链接颜色,并且,当链接处于 :hover 状态时才会带有下划线
这些样式可以在 scaffolding.less 文件中找到。
用Normalize重置样式
从 Bootstrap 2 开始, 老的重置方式被
取代, 这是
和 共同维护的一个项目,这一项目还被
所采用。虽然我们在reset.less 文件中使用了许多Normalize的代码,但是,我们也移除了一些不适合Bootstrap的元素。
栅格系统示例
Bootstrap默认的栅格系统为12列 ,形成一个940px宽的容器,默认没有启用
。如果加入响应式布局CSS文件,栅格系统会自动根据可视窗口的宽度从724px到1170px进行动态调整。在可视窗口低于767px宽的情况下,列将不再固定并且会在垂直方向堆叠。
带有基本栅格的HTML代码
对于简单的两列式布局,创建一个 .row 容器,并在容器中加入合适数量的 .span* 列即可。由于默认是12列的栅格,所有 .span* 列所跨越的栅格数之和最多是12(或者等于其父容器的栅格数)。
&div class="row"&
&div class="span4"&...&/div&
&div class="span8"&...&/div&
上面的代码展示了 .span4 和 .span8 两列,两列的和总共是12个栅格。
把列向右移动可使用 .offset* 类。每个类都给列的左边距增加了指定单位的列。例如,.offset4 将 .span4 右移了4个列的宽度。
3 offset 2
3 offset 1
3 offset 2
6 offset 3
&div class="row"&
&div class="span4"&...&/div&
&div class="span3 offset2"&...&/div&
在默认的栅格系统里, 在已有的.span*内添加一个新的 .row 并加入 .span* 列,就可实现嵌套。被嵌套列中的每列列数总和要等于父级列。
Level 1 column
&div class="row"&
&div class="span9"&
Level 1 column
&div class="row"&
&div class="span6"&Level 2&/div&
&div class="span3"&Level 2&/div&
流式栅格系统案例
流式栅格系统对每一列的宽度使用百分比而不是像素数量。它和固定栅格系统一样拥有响应式布局的能力,这就保证它能对不同的分辨率和设备做出适当的调整。
基本的流式栅格HTML代码片段
将 .row 替换为 .row-fluid 就能让任何一行“流动”起来。应用于每一列的类不用改变,这样能方便的在流式与固定栅格之间切换。
&div class="row-fluid"&
&div class="span4"&...&/div&
&div class="span8"&...&/div&
流式栅格的偏移
定义方式和固定网格系统相同:给任何想偏移的列添加 .offset* 即可。
4 offset 4
3 offset 3
3 offset 3
6 offset 6
&div class="row-fluid"&
&div class="span4"&...&/div&
&div class="span4 offset2"&...&/div&
流式嵌套布局
和固定栅格的嵌套有一点不同:被嵌套的列数之和要等于12。这是因为流式栅格使用百分比来设置每列的宽度。
&div class="row-fluid"&
&div class="span12"&
&div class="row-fluid"&
&div class="span6"&
&div class="row-fluid"&
&div class="span6"&Fluid 6&/div&
&div class="span6"&Fluid 6&/div&
&div class="span6"&Fluid 6&/div&
提供了一个通用的固定宽度(也可以变为响应式)的布局方式,仅仅用 &div class="container"& 即可。
&div class="container"&
利用 &div class="container-fluid"& 代码可以创建一个流式、两列的页面 & 非常适合于应用和文档类页面。
&div class="container-fluid"&
&div class="row-fluid"&
&div class="span2"&
&!--Sidebar content--&
&div class="span10"&
&!--Body content--&
启用响应式特性
通过在文档中的 &head& 标签里添加合适的meta标签并引入一个额外的样式表即可启用响应式CSS。如果你已经在定制页面编译好一个Bootstrap, 那么只需添加一个meta标签。
&meta name="viewport" content="width=device-width, initial-scale=1.0"&
&link href="assets/css/bootstrap-responsive.css" rel="stylesheet"&
Bootstrap在默认情况下是没有引入响应式特性的,因为不是任何情况都需要使用到。我们并不是鼓励开发者移除此功能, 而是在需要使用的时候才启用它。
关于响应式Bootstrap
Media queries允许在一些条件基础上自定义CSS 例如:&ratios、widths、display type, etc& 但通常都是围绕着 min-width 和 max-width 这两者。
修改栅格系统中列的宽度
需要的时候, 用堆叠元素代替浮动
调整标题和文本的大小以便适合各种设备
谨慎的使用media queries,先从你的手机用户开始吧。对于大型的项目, 应该考虑使用专门的代码库, 而不是构筑在media queries之上。
被支持的设备
Bootstrap 所支持的几个media queries都放在了一个文件中, 可以让你的项目更灵活的去适应不同设备和屏幕分辨率。包括:
大于等于1200px
大于等于980px
大于等于768px
手机到平板
小于等于767px
流式列,无固定宽度
小于等于480px
流式列,无固定宽度
/* 大屏幕 */
@media (min-width: 1200px) { ... }
/* 平板电脑和小屏电脑之间的分辨率 */
@media (min-width: 768px) and (max-width: 979px) { ... }
/* 横向放置的手机和竖向放置的平板之间的分辨率 */
@media (max-width: 767px) { ... }
/* 横向放置的手机及分辨率更小的设备 */
@media (max-width: 480px) { ... }
响应式布局辅助class
为了更快的针对移动设备做开发, 下面列出的辅助class用于针对不同设备显示和隐藏内容。下表是可用的class列表, 以及它们在各个media query布局下的效果。这些class可以在 responsive.less 文件中找到。
手机 767px 及以下
平板 979px 到 768px
.visible-phone
.visible-tablet
.visible-desktop
.hidden-phone
.hidden-tablet
.hidden-desktop
在有限的情况下使用, 避免创建同一个站点的不同版本。当这些class能对每种设备的展示做有益的补充的时候才使用。响应式工具不能用于table元素,而且本就不支持。
响应式工具测试案例
调整浏览器的宽度或者在不同的设备上加载该页面用以测试上述的class。
在...上显示
绿色选中标记用以指示这些class在你当前的可视窗口是可见的。
手机✔ 手机
平板✔ 平板
电脑✔ 电脑
在...上隐藏
这里的绿色选中标记用以指示这些class在你当前的可视窗口是隐藏的。
手机✔ 手机
平板✔ 平板
电脑✔ 电脑没有更多推荐了,
不良信息举报
举报内容:
栅格数据空间分析之二什么是栅格数据
举报原因:
原文地址:
原因补充:
最多只允许输入30个字
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!栅格布局_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
阅读已结束,下载本文需要
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩2页未读,
定制HR最喜欢的简历
你可能喜欢}

我要回帖

更多关于 12栅格系统 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信