`
axengine
  • 浏览: 145749 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

CSS:超越网格的布局

阅读更多
“Aerials, in the sky, when you lose small mind you free your life” - System of a Down (1) 十一月的一个深夜,从空中俯瞰我的家乡,亚利桑那州的图森市,它那严谨的网格布局给我留下了深刻的映像。图森是美国众多规划过城市之一,从空中看,很容易发现图森的城市设计师把这种精确的布局成功的应用到了规划中(图1)。 图 1 我是从伦敦回到图森,相比之下,伦敦完全没有遵循网格布局。它的设计中有螺旋状的,有圆形的,有梯形的,并且似乎更像是自然产生的(图2) 图 2 这篇文章我构思了很长时间,因为通过鸟瞰城市的布局,让我联想到了 web 设计中的网格。用现有的技术和技巧,我们可以随行所欲的创造出基于网格的设计,或者,我们也可以完全打破这种网格。后者无疑将会增强我们的 web 设计:而摆在我们面前的挑战就是如何摆脱狭隘的思想,超越网格布局。 方向感和城市 如果我们把城市规划延伸到 web 设计中去,会有许多十分有趣的轨迹。基于网格的布局格外适用于那些有引导性,易于导航,真实的视觉表达的网站。网格能很好的帮助设计师来布置,浏览者也易于访问(图3)。 图 3:Ryan Brill 从有利的一面来看,网格状的图森当然更容易亲近一些;你仅仅需要基本的方向感和街道地图。居民们根据这种网格来告诉别人自己家所处的位置:“我在坎贝尔大街和王子路的东南角。”道路和交通都是从北至南或从西到东,这样,城市就更容易导航。 另一方面,图森的设计是在城市有限发展的前提之下的,一旦城市的发展超出了这种前提,在保持它的导航性和可用性上就会出现无数的问题。此外,图森的网格给社区和邻里带来的优越性也并未凸现。结果许多图森的居民都感觉到城市缺少活动中心和独特的社区。并且当这种分割的确存在时,人们很容易找到他们的目的地,但也同样容易在某一个地方迷失掉。 伦敦与图森相去甚远,它像一个迷宫。我发现许多伦敦人都随身携带一本伦敦旅游指南来防止自己迷路!城市的交通系统就更具挑战性,最具表现性的算是出租车司机,他们必须通过一种测试来证明他们具有驾驶这种传统黑色出租车的“能力”。城市的有机发展并没有增强它的可导航性。 但在伦敦,那些让人惊叹的包围和充满趣味的区域划分呈现在城市的各个地方。可以说它不止有一两个文化中心或社区中心,而是许多个。降低了导航性,但增加了选择性,并且人们会有更高的动机来参与到城市发展中去。 当考察这些非结构化、自然的设计时,人们如何才能在这些蜿蜒,迂回的道路上找到方向呢?另一方面,在 web 设计和开发中可以打破这种循规蹈矩的思想。但至今,仍是有所保留的。在图4中,我们看到了一种完全破除传统网格禁锢的布局方式,在保持易用性的同时设计师采用了一种习惯之外的布局。 图 4:AIGA Los Angeles 奇妙的书写方式 对于一个以代码为中心而非设计能力的人来说,代码和设计紧密的结合在一起,更能让我痴迷。我坚信,这种长时间禁锢在网格中的设计思想是表格布局所留下的后遗症(图5)。再加上慢慢开始的对 CSS 布局的理解,我们很容易发现这种布局习惯产生的原因。 表格布局似乎为网格设计而生,这种标记本身就可以繁衍出精确的网格,留给我们剩下的工作仅仅是用图片、文字和其他界面元素填充这些格子来完成我们的设计(图6)。如果我们需要创造一个非机构化或自然的,带有复杂视觉表现的设计,就需要用到大量的图片和标记,会造成文档的臃肿和标记的复杂化。 图 6:Weightshift 基于表格的网格布局有它的一些优点,但是,比如城市的设计,优势也会变成弱点。基于表格的网格布局能保证单元格中的元素都按照我们设想的那样去排列。让所有列都保持同样的大小?我们甚至不用去考虑这个问题,这是表格天生的属性。让单元格之间产生一些空白?同样也不需要我们去思考。当然,如果我们不想要这种大小一致的格子呢?却只能得到一个令人痛苦的答案:不行。 CSS 改变了这一切,这就是为什么我们一直在整理 web 设计经验的原因。在使用了多年的表格之后,我们慢慢开始对CSS布局产生了独特的见解——对于那些离散的,语义化的元素来说,CSS 的视觉模型更容易打破网格布局。无懈可击,并非如此,CSS 给我们带来益处,同样也给我们带来了难题。像表格那样可以伸缩的列就是其中一个,还有每个单元之间的空白。 CSS 视觉模型是由盒模型和线条组成。网格也是由它们组成,是吗?当然,如果你那样去做的话,答案是肯定的。这是最基本的差异。CSS 允许我们随心所欲的使用一个盒子和多个盒子,而独立于它的外围(图7)。 图 7 我们可以使用 position 属性或直接浮动一个盒子,并且我们可以加入所占空间小一些的图片来做为背景。通过一些技巧,我们可以让这些盒子呈现出不同的视觉效果。其中包括网格,但同样也能高效的创造出非网格化的设计来,你可以在 Dave Shea 的 Blood Lust 中看到,一个为 CSS [...]
分享到:
评论

相关推荐

    Transcending CSS: The Fine Art of Web Design, Part 3

    2. **Grid Layout**:一种更加强大、复杂且灵活的布局模式,适合创建复杂的网格布局。 3. **Positioning**:利用`position`属性来精确控制元素的位置。 4. **Responsive Design**:通过媒体查询等手段使网页能够在...

    Transcending.CSS:The.Fine.Art.of.Web.Design

    2. **布局策略**:作者会详细讲解各种布局模式,如流式布局、网格布局和响应式设计,这些都是现代Web设计的关键。此外,还将讨论CSS Flexbox和Grid系统,它们为创建灵活、响应式的布局提供了强大工具。 3. **高级...

    DIVi+CSS完美布局

    8. **Grid布局**:CSS Grid(网格布局)则提供了二维布局系统,适用于创建复杂的、响应式的网格界面,如杂志布局或自适应网页设计。 9. **响应式设计**:结合`div`和CSS,开发者可以实现响应式设计,使网页在不同...

    CSS2.0 中文手册

    10. **页面布局**:CSS2.0通过`display`属性支持流式布局、网格布局和定位布局,如`block`、`inline`、`flexbox`(CSS3中引入)和`grid`(CSS3中引入)。 11. **透明度**:CSS2.0通过`opacity`属性控制元素的透明度...

    CSS高级学习教程

    - **Grid布局**:允许创建复杂的二维网格布局,适用于桌面和移动设备。 #### 五、CSS响应式设计 - **媒体查询**:用于检测设备特性(如屏幕尺寸),从而根据这些特性应用不同的样式规则。 - **流体布局**:使用...

    960grid 用于前端布局

    960 Grid System 是一种广泛应用于前端开发的布局框架,由 ...虽然现代前端框架如 Bootstrap 和 Foundation 已经超越了单纯的960像素网格,但960 Grid System 的概念仍然对理解网页布局的基础有着重要的指导作用。

    advanced-css-homework2:高级CSS作业2

    随着Web技术的发展,CSS已经超越了基本的样式设置,发展出许多高级特性和技巧,使开发者能够创建更加复杂和动态的网页效果。 在这个作业中,我们主要会涉及以下几个高级CSS知识点: 1. **选择器的使用**:CSS选择...

    awesome-css-houdini:精选CSS Houdini资源列表

    3. **CSS Layout API**:通过Layout API,开发者可以直接操纵盒模型和布局计算,创建出新型的布局模式,超越了传统CSS布局方式如Flexbox和Grid。 4. **CSS Properties and Values API**:此API使得开发者可以定义...

    CSS-Advanced:高级CSS

    本主题聚焦于"CSS-Advanced:高级CSS",它涵盖了许多超越基本概念和技术的进阶特性。在深入探讨之前,先了解一下标签“HTML”,它代表HyperText Markup Language,是构建网页结构的基础。 一、选择器的高级应用 CSS...

    web-programming-two:更多Web编程的课堂练习

    在本研讨会中,学生将学习高级CSS选择器,CSS转换和动画的基础知识,以及如何构建自定义布局网格。 该研讨会基于在Web编程简介中学到的概念。 第一场:选择器 有关高级CSS选择器的说明,以及如何在保持整洁,最小...

    优秀的CSS 框架整理

    6. **CleverCSS**:CleverCSS是一种简洁的CSS预处理器,灵感来源于Python,其语法简洁明了,功能强大,甚至超越了CSS2。 7. **Tripoli CSS Framework**:Tripoli致力于重置和重建浏览器默认样式,确保跨浏览器的...

    H192国外_HTML手机电脑网站_网页源码_移动端前端js效果_H5模板_自适应css样式ui组件.zip

    通过灵活的网格系统、相对单位和媒体查询,自适应CSS能够确保无论在大屏桌面还是小屏移动设备上,网站都能优雅地呈现。 6. **UI组件**:UI组件是界面设计中的可重用元素,如按钮、导航栏、滑块、下拉菜单等。在H192...

    纯css3加减乘除计算器代码

    2. **布局技术**:计算器的布局可能采用了`display: grid`或`display: flex`,这两种现代CSS布局模式可以方便地创建网格或弹性容器,使计算器的键位排列整齐。 3. **字体图标**:计算器的运算符(如+、-、*、/)...

    半黑:使用css flex属性出于好奇而构建的简约设计

    CSS3的Web布局模型超越了传统的流式布局和网格布局,提供了更强大的容器内元素排列方式。 标签中的“html5 flexbox website-design css3-flexbox HTML”为我们揭示了项目的关键词。HTML5是现代网页开发的基础,提供...

    高级css

    4. **Grid布局**:网格布局(Grid)是CSS3的另一大突破,适用于二维布局。通过定义行和列,它可以创建复杂的网格系统,使得元素的定位更加直观和灵活。 5. **响应式设计**:随着设备多样性的增加,响应式设计变得至...

    Next-Level-CSS

    2. **CSS Grid布局**:这是一种二维布局系统,允许开发者轻松创建复杂的网格布局。通过`grid-template-columns`、`grid-template-rows`等属性,可以定义行和列,实现灵活的布局。 3. **Flexbox布局**:Flexbox...

    模仿QQhtml静态页面

    2. **CSS3布局**:CSS3允许更复杂的布局模式,比如Flexbox(弹性盒模型)和Grid(网格布局)。Flexbox适用于一维布局,如导航条、按钮组等,而Grid则适用于二维布局,可以轻松实现QQ界面中的模块化布局。 3. **CSS3...

    DonovanDufour_3_03022021:动态网页和动画CSS

    在传统的CSS中,我们可以设置元素的色彩、字体、布局等属性,但随着技术的发展,CSS已经超越了静态设计,引入了动效功能。 动态网页动画主要依赖于CSS3,特别是它的动画和过渡特性。CSS3动画允许开发者通过关键帧...

    beyondtheblog

    2. **布局技术**:CSS3引入了新的布局模型,如Flexbox(弹性盒布局)和Grid(网格布局),这使得创建复杂的响应式布局变得简单。在博客设计中,这些技术可以用来实现动态内容排列,适应不同屏幕尺寸。 3. **响应式...

    OffCord:不和谐,但略有偏离

    4. **布局技术**:包括流体布局、网格系统、Flexbox(弹性盒布局)和Grid(CSS Grid布局),这些工具帮助开发者创建响应式和灵活的页面布局。 5. **响应式设计**:利用媒体查询(media queries)根据设备特性调整...

Global site tag (gtag.js) - Google Analytics