`
flying188
  • 浏览: 17407 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

三大Flex布局用法

阅读更多

Flex布局基础

对于Flex 初学者,在Hello World之后,Flex布局便是下一站学习要的要义。若是从传统的Html转变而来,总希望找到类似于Div/Table/UL等之类的控件,也希望在 Flex中可以像Dreamweaver一样可以拖拽控件;而如果是从Windows Application程序转变而来,则可能更喜欢Absolute布局,让控件散落于页面之上,通过x/y控制其坐标。这种做法让Html设计师觉得可 笑,但我见过有人确实用VS这么做过。

喜欢Div的朋友,可能觉得Box很亲切;喜欢用Table的设计师,对不起,Flex没有Table,Grid虽与之极像,但不宜用来布 局;Application程序员也不要图行事,使用Absolute布局,这种布局不宜开发Web应用,如果只是开发桌面版则无关紧要。

本节写了三个Demo:

◆Absolute布局

◆Hbox布局

◆VBox布局(与前者统称Box布局)

如果开发AIR程序或者桌面应用,可以选择Absolute布局;但如果开发Web应用,推荐学习、研究Box布局。右击可以查看源码。

一、Flex布局之Absolute

用Flex新建Application时,最下面有一个布局属性选项:Vertical,Horizontal,Absolute。意思如单词。若 选择Absolute,则Application的子控件依据其{x,y}坐标依靠。但不影响第二代子控件,即,如果放一个HBox到该 Application中,HBox中的控件则水平排列。Horizontal与Vertical相当于把Application做为一个水平或竖向的盒 子(Box),对子、孙控件的影响关系与Absolute类似。

查看Absolute,不难发现,可视区域的宽度是一定的,无论在何种分辨率下,何种浏览器宽度。但在Web应用中,我们不希望出现这样的效果。相 反,我们可能希望控件可以按照百分比自动调整位置。只此一条,开发Web应用,便不建议使用Absolute布局。由此便产生了方便、简单、易用的Box 布局。

二、Flex布局之Hbox

HBox让子控件按水平方向自动排列,居右、居左或居中都可以。

查看Hbox,控件与前者没有增减,同样的控件。但它可以自适应浏览器宽度。文章的标题栏部分用了一个HBox,其包涵三个子控 件:Label,Spacer与LinkButton.Spacer的宽度设为100%,这样无论Label无多少字符,多宽,都可以把 LinkButton撑到最右边。同样,也可以把它用在VBox中,则设置其高为100%。Spacer在Box布局中非常实用。
细心的朋友不难发现,这个Application的layout属性是Vertical,整个App相当于一个VBox。最下面的评论文本框与按纽也在一个HBox之内。

三、Flex布局之VBox

VBox让子控件在竖直方向上排列。top,bottom or center。

查看VBox,这个App的layout是Horiazontal,相当于一个HBox。一级控件是两个VBox,一左一右。左边与前面的HBox 对应的部分类似。右边用Panel与TitleWindow,还有Grid,Tile。Panel与TitleWindow都具有layout属性,可以 在其内部放置任何子控件,待遇与Application同。值得一提的是Tile,它可让子控件流动延伸,先在x轴上排行,满了之后再换行。 TileList与其类似。

Grid酷似html中的Table,但差别很大,也不适合做布局用。实际应用中,也常用Tile或TileList代替。
Box布局可以满足基本的项目应用,但有一些问题。譬如,文章内容要滚动显示,能不能像Html那样实现流布局?答案是可以的。Box布局只是基本的布局方法,并没有发挥Flex的长处与优势。关于State与流布局在稍后。
在商业项目开发中,Application99%都使用absolute布局,中间所用的容器间有box,tile或其它布局。

分享到:
评论

相关推荐

    flex布局布局篇

    #### Flex布局使用方法 - 为了使用Flexbox,需要在容器元素上设置`display: flex`或`display: inline-flex`。这会使得容器内的子元素成为flex项目。 - Flex项目可以使用上述列出的flexbox相关属性来进一步控制布局和...

    flex布局教程的实例

    在本实例教程中,廖雪峰老师通过一系列的实例,展示了Flex布局的强大功能和使用方法。 首先,Flex布局涉及到两个基本概念:Flex容器和Flex项目。在Flex布局中,容器内的直接子元素自动成为Flex项目,并且可以应用...

    Flex布局学习资料

    《Flex 布局教程:语法篇.pdf》可能更深入地探讨了Flex布局的语法细节,包括更多高级用法和特殊情况的处理,例如: 1. **Flex-wrap属性**:控制是否换行,`nowrap`表示不换行,`wrap`表示换行,`wrap-reverse`则...

    flex移动布局,极简公共样式包,附demo

    通过查看和修改Demo,开发者可以快速掌握Flex布局和公共样式包的用法,加速项目的开发进度。 6. **兼容性** 由于Flex布局是CSS3的一部分,所以它在现代浏览器中得到了广泛支持。然而,对于较旧的浏览器,可能需要...

    Flex布局之关于组件的大小

    在深入探讨Flex布局中关于组件大小的管理时,我们首先需要理解Flex布局的基本概念及其如何影响组件的尺寸。Flex布局是一种用于网页布局的强大工具,它能够有效地处理不同屏幕尺寸下的响应式设计,使得元素能够在容器...

    移动web开发实例flex布局案例源码

    本实例聚焦于使用Flex布局进行移动Web开发,通过具体的源码分析,我们可以深入理解并掌握这一强大的CSS布局模式。 1. Flex布局基础: Flex布局允许开发者轻松地调整元素的大小和位置,以适应不同屏幕尺寸和设备...

    微信小程序 Flex布局详解

    弹性因子(flex-grow, flex-shrink, flex-basis)在微信小程序的Flex布局中,每个伸缩项目都可以通过flex属性来指定其弹性因子,它是一个简写属性,可以设置三个值:flex-grow, flex-shrink, 和 flex-basis。...

    Flex布局笔记.docx

    本笔记将深入探讨Flex布局的核心概念、属性及其用法。 1. Flex容器(flex-container) Flex容器是通过设置`display`属性来定义的,有两种类型: - `display: inline-flex`:创建一个行内Flex容器,元素与其他行内...

    Flex布局教程

    随着移动设备的普及和响应式设计的日益重要,Flex布局因其简洁性、灵活性和强大的布局能力,逐渐成为了前端开发者构建布局的首选方法。通过阮一峰编写的Flex布局教程,我们可以学习到如何使用这些属性来实现各种复杂...

    02-flex布局.pdf

    使用Flex布局时,开启布局的容器称为flex容器(flexcontainer),其直接子元素称为flex项目(flexitems)。 要使用Flex布局,可以为元素的display属性设置为flex或inline-flex。如果设置为flex,则flex容器以块级...

    swift-OC实现的使用“flex布局”的表格控件

    本文将详细介绍一个使用Swift和Objective-C实现的、基于“Flex布局”(也称为Flexbox布局)的表格控件。该控件名为OCExcelView,它为开发者提供了一种灵活的方式来构建动态、响应式的表格界面。 首先,Flex布局是一...

    移动web 第三天移动端特点、百分比布局、flex布局

    "移动Web第三天移动端特点、百分比布局、Flex布局" 在移动Web开发中,了解移动端特点是非常重要的。移动端网页和PC端网页有很多不同点,如屏幕尺寸、分辨率、视口等。下面我们将详细讲解移动端特点、百分比布局和...

    flex布局-携程网-移动端

    通过学习和实践,开发者不仅能掌握Flex布局的基本用法,还能理解如何结合其他CSS技术,如媒体查询(Media Queries)来进一步提升响应式设计的水平。对于想要从事移动端网页开发的人员来说,这是一次非常有价值的实践...

    Ctrip(flex布局).zip

    在移动开发领域,Flex布局(Flexible Box Layout)已经成为创建响应式和动态布局的首选方法,尤其是在处理复杂的网页或应用界面时。"Ctrip(flex布局).zip"这个压缩包很可能是包含了一组示例代码,用于演示如何使用...

    新建文件夹_flex布局_

    本教程将深入探讨Flex布局的概念、使用方法及其在HTML和CSS中的应用。通过学习,你将能够掌握如何利用Flexbox实现各种复杂的网页布局。 一、Flex布局的基本概念 1. 灵活性:Flex布局允许容器内的子元素自适应调整...

    Flex 布局教程:语法篇.doc

    通过这些属性的组合使用,开发者可以轻松实现诸如居中布局、等间距分布、自适应尺寸等多种复杂的布局效果,同时,Flex布局还支持项目自身的伸缩性,使得布局能够根据屏幕尺寸变化而自适应,极大地提高了响应式设计的...

    flex布局的使用方法.pdf

    未使用Flex布局时,元素按照常规流进行布局,可能需要使用浮动、绝对定位等方式进行对齐。示例代码中,`.center`内的三个粉色方块 `.left`, `.content`, `.right` 按照普通流左对齐。当启用了Flex布局后,通过`...

    微信小程序Flex布局用法深入浅出分析

    本文实例讲述了微信小程序Flex布局用法。分享给大家供大家参考,具体如下: Flex布局: Flexible Box的缩写,意为“弹性布局”,为盒模型提供巨大的灵活性 使用说明: 1. 任何容器都可以使用flex布局 .box { ...

    实现flex布局的基本功能,flex的基本布局模板.zip

    Flex布局,全称为“Flexible Box”,也称作弹性盒布局,是CSS3中的一种布局模式,主要用于解决传统盒模型在处理复杂布局时遇到的问题。它为开发者提供了更强大的控制力,使得元素能够在一行或一列中灵活地分配空间,...

    Web-前端教程05 Flex 布局大法.zip

    Flex布局,全称为“Flexible Box”,也称作弹性盒布局,是现代Web开发中的一个核心...在Web-前端教程05 Flex 布局大法.mp4中,你将深入学习到Flex布局的原理、使用方法及实践技巧,为构建现代响应式网站打下坚实基础。

Global site tag (gtag.js) - Google Analytics