九宫格基本布局

作者:by0001 来源:蓝色理想 时间:2009-06-18 18:36:00 

九宫格是一种比较古老的设计,它最基本的表现其实就像是一个三行三列的表格。其实它最初是在window的c/s结构中用得比较多,比如我们经常看到软件中的一个窗体,其实就是一个九宫格的典型应用,因为窗体需要在八个方向拉伸,所以在C/S软件中大量采用这种技术来布局设计。在B/S系统大行其道的当今社会,这种布局逐渐被一些网页设计师运用在网页中去,用得最多的就是在圆角框布局中应用。

下图演示了九宫格的基本布局:

从上图可以看出,每一行包括三列,其中蓝色方块是顶角,这四个块是宽高固定的区域,而黄色的四个区域分别是四条边,这些都是要水平或垂直平铺的,而中间的橙色区域是装载内容的主要区域。

这样的结构是最有利于内容区域随屏幕分辩率不同而自动伸展宽高,这种结构也是网页设计师是最想要的一种布局结构,它灵动而从容。

下面我们就来实现它:

结构层

因为它要适应八个方向的伸展,所以每个方向都用一个div来实现,少一个则灵活性就不足。那么根据这个原理,我们可以得到如下的结构:


<div class="box">
    <div class="t_l"></div>
    <div class="t_m"></div>
    <div class="t_r"></div>

    <div class="m_l"></div>
    <div class="m_m">内容区</div>
    <div class="m_r"></div>

    <div class="b_l"></div>
    <div class="b_m"></div>
    <div class="b_r"></div>
</div>

样式层

根据结构,我们可以写出基本的样式。基本实现原理,是利用将总容器.box设置为相对定位并设置overflow:hidden;让超出它的地方全部被切除,并将其里面的八个方向的div设为绝对定位,并将它们的z-index设置为2,然后将四个角容器分别设置到四个角落上。

.box{overflow:hidden;position:relative;}
.t_l,.t_m,.t_r,.b_l,.b_m,.b_r,.m_l,.m_r {position:absolute;z-index:2;}

 

标签:窗口,设计,布局,九宫格
0
投稿

猜你喜欢

  • python实现AI聊天机器人详解流程

    2022-12-11 23:57:37
  • 微信小程序request请求后台接口php的实例详解

    2023-11-11 14:24:04
  • 全民学编程之 Hello World

    2023-03-13 20:48:37
  • python+opencv实现堆叠图片

    2023-07-19 21:22:45
  • Python中的字符串查找操作方法总结

    2021-06-13 12:21:46
  • 不错的一篇关于javascript-prototype继承

    2024-04-23 09:15:42
  • ASP与数据库应用(给初学者)

    2009-03-09 18:32:00
  • pygame学习笔记(2):画点的三种方法和动画实例

    2021-09-02 19:59:51
  • MySQL的数据库常用命令 超级实用版分享

    2012-01-05 18:58:00
  • 解读Python中degrees()方法的使用

    2021-08-21 07:13:24
  • 详解Python3的TFTP文件传输

    2023-06-01 22:29:17
  • Pytorch 之修改Tensor部分值方式

    2023-04-11 06:45:12
  • 在pycharm中使用pipenv创建虚拟环境和安装django的详细教程

    2021-06-06 19:02:37
  • coreseek 搜索英文的问题详解

    2023-11-20 14:12:10
  • MySQL 8.0 新特性之检查约束的实现

    2024-01-23 15:25:08
  • MySQL性能参数详解之Max_connect_errors 使用介绍

    2024-01-21 13:31:36
  • Python实现问题回答小游戏

    2023-05-13 13:26:19
  • 使用php+swoole对client数据实时更新(一)

    2024-05-03 15:13:08
  • asp如何用ADO批量更新记录?

    2010-06-10 18:42:00
  • Python多线程实例教程

    2022-11-30 14:15:43
  • asp之家 网络编程 m.aspxhome.com