html5--6-63 布局

实例

学习要点

  • 掌握传统布局与CSS3新增布局方式的实现和应用
  • 掌握CSS3新增属性box-sizing
  • 了解CSS3新增的多列布局

常用布局方式

    • 固定布局与流体布局的优缺点

      固定布局

      注:设置了固定宽度的外包裹,里面的各个模块也是固定宽度而非百分比。
      大多数设计者选择960或760px的固定宽度。960px最适合1024×768或者更高的分辨率,有一点空间设置margin。如果设计者想让布局适应800×600分辨率的用户,可以使 用760px的宽度,它仍然适用于更大的分辨率。

      优点:

      1. 固定宽度布局更容易使用,在设计方面更容易定制。
      2. 在所有浏览器中宽度一样,不设置min-width和max-width,来防止内容缩放引起的布局混乱。

      缺点:

      1. 对于使用高分辨率的用户,固定宽度布局会留下很大的空白。
      2. 屏幕分辨率过小时需要垂直滚动条。

      流体布局

      流体布局,主体部分都是用了百分比宽度,因此可以自适应用户的分辨率。

      优点:

      1. 流动布局页面对用户更友好,因为它能自适应用户的设置。
      2. 页面周围的空白区域在所有分辨率和浏览器下都是相同的,在视觉上更美观。

      缺点:

      1. 设计者更难控制用户所见,并可能忽略掉一些错误,因为在特定的分辨率下看起来好的。
      2. 视频以及其他设置了宽度的内容可能需要多种宽度以适应不同分辨率的用户。
    • 浮动布局

      根据内容是固定尺寸还是百分比有可以划分为:

      1. 流体浮动布局
      2. 固定浮动布局
    • 定位布局

      根据内容是固定尺寸还是百分比有可以划分为:

      1. 流体定位布局
      2. 固定定位布局

      使用定位布局的重要知识点---设置参照基准点:

      1. 将父元素设为相对定位,且不设置坐标
      2. 如果父元素设置了相对定位,子元素的决定定位将以父元素的基准点为参照基准点
    • 了解CSS3新增的多列布局

      通过 CSS3,您能够创建多个列来对文本进行布局 - 就像报纸那样!

      传统布局实现多列(3列及以上)布局的问题

      1. 实现起来麻烦,很不方便
      2. 后期维护更改困难

      多列属性:

      1. columns 规定设置 column-width 和 column-count 的简写属性。

        • column-width 规定列的宽度。(该宽度为缩放时的最小宽度,默认为auto)
        • column-count 规定元素应该被分隔的列数。默认为auto
      2. column-rule 设置所有 column-rule-* 属性的简写属性。
        • column-rule-color 规定列之间规则的颜色。
        • column-rule-style 规定列之间规则的样式。
        • column-rule-width 规定列之间规则的宽度。
      3. column-span 规定元素应该横跨的列数。默认值为1,可以设置为all
      4. column-gap 规定列之间的间隔。
      5. column-fill 规定如何填充列。 主流浏览器都不支持 column-fill 属性。
  • 弹性布局

    比较新的布局方式:

    优点:

    1. 应用恰当的弹性布局对用户十分友好。页面中所有元素可以随着用户的偏好缩放。
    2. 对于同时喜欢流动和定宽布局的设计师来说,弹性布局是完美的,因为前两种布局的优点在弹性布局中都能找到。

    缺点:

    1. 正是因为第一个优点,这种布局会产生一个巨大的可用性问题。需要花更多时间理解和测试,让布局适合所有用户。
    2. 这种布局类型相对于其他两个更难制作

CSS3新增属性box-sizing

  • box-sizing:属性值content-box(默认值:元素的宽高不包含边框和内边距)/border-box(元素的宽高包含边框和内边距)
  • 为了适应低版本浏览器需要加前缀。

html5--6-63 布局的更多相关文章

  1. web前端学习(二)html学习笔记部分(10)-- HTML5构建应用布局和页面

    1.2.25  HTML5构建应用布局和页面 1.2.25.1  HTML5在移动开发中的准则 1.尽量使用单页面开发 2.慎重选择前端UI框架 3.动画.特效使用准则(60fps) 浏览器消耗最小的 ...

  2. 浅谈html5 响应式布局

    一.什么是响应式布局? 响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本. 这个概念是为解决移动互联 ...

  3. html5 响应式布局

    一.什么是响应式布局?       响应式布局是Ethan Marcotte在2010年5月份提出的一个概念,简而言之,就是一个网站能够兼容多个终端——而不是为每个终端做一个特定的版本. 这个概念是为 ...

  4. html5新标签布局应用指南

    html5中为了便于设计者的网站布局新添加了一些标签,本文主要讲解这些标签的实际应用方法. 大多数前端的朋友在设计网站时主要应用<div>标签构造盒子进行布局,这是种非常高效的方法,可以将 ...

  5. html5 响应式布局(媒体查询)

    响应式布局        响应式布局,简而言之,就是一个网站能够兼容多个终端--而不是为每个终端做一个特定的版本.这个概念是为解决移动互联网浏览而诞生的.        响应式布局可以为不同终端的用户 ...

  6. HTML5+CSS3常见布局方式

    1.等高布局 1.1 代码 等高布局是指子元素在父元素中高度相等的布局方式 <div class="father"> <div class="f1&qu ...

  7. 【浅谈html5 响应式布局之自动适应屏幕宽度】

    允许网页宽度自动调整 “自适应网页设计”到底是怎么做到的?其实并不难. 首先,在网页代码的头部,加入一行viewport元标签. <meta name=”viewport” content=”w ...

  8. html5有什么布局标签

    header h1 nav ul li a section(id) div h3 article figure img article h4 header time datetime='' body ...

  9. html5响应式布局

    1.media控制布局 <link type="text/css" rel="stylesheet" href="css04.css" ...

  10. HTML5开发和布局(待补充)

    移动开发准则 1.尽量使用单页面开发(SPA) 2.慎选UI框架 3.动画.特效使用(60fps) **浏览器消耗最小的CSS属性** 位置:transform:translate(x,y,z) 大小 ...

随机推荐

  1. Python入门--10--序列

    一.与列表.元祖的相同与不同 1.都可以通索引得到元素 2.默认索引从0开始 3.可以通过分片得到一个范围内的元素集合 4.有很多共同的操作符 二. 1.list()这个函数用法 a="we ...

  2. HDU 5667 Sequence【矩阵快速幂+费马小定理】

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5667 题意: Lcomyn 是个很厉害的选手,除了喜欢写17kb+的代码题,偶尔还会写数学题.他找到 ...

  3. P1551 亲戚 洛谷

    https://www.luogu.org/problem/show?pid=1551 题目背景 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个 ...

  4. spring boot 添加mybatis,以及相关配置

    首先在pom.xml文件里加入 <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifa ...

  5. android 按两次物理返回键退出程序

    <?xml version="1.0" encoding="utf-8"?> <!-- 定义当前布局的基本LinearLayout --> ...

  6. android 获得屏幕宽度和高度

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools= ...

  7. VBA 把电信的电话费用表转换成部门电话费用明细表(图文)

    今天同事要做一个这种工作.就是把电信发来的费用表,转换成按部门划分的电话费用表,100多部电话,假设一个个去核对,真还是须要些时间的.问题来了,有更好的方法么,我们来看一下. 电信公司给的费用明细是这 ...

  8. ADO.NET EF 4.2 中的查询缓存(避免查询缓存)

    在WinForm系统中遇到了个问题,Form1是查询窗口,根据条件查询出所有数据,双击列表后创建弹出Form2窗口编辑单个记录,但编辑后保存后,在Form2中查询到的还是旧的数据,实际数据库中已经更新 ...

  9. hdu 3746 Cyclic Nacklace (KMP求最小循环节)

    //len-next[len]为最小循环节的长度 # include <stdio.h> # include <algorithm> # include <string. ...

  10. Ubuntu E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)

    E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它? 不要删掉这些目录!! ...