居中布局

 

水平居中

父元素和子元素的宽度都未知

inline-block + text-ailgn

.child{display:inline-block;}

.parent{text-align:center;}

优点:兼容性好

缺点:子元素文本继承了text-align属性,子元素要额外加text-align:left;

table + margin

.child{display:table; margin:0 auto;}

优点:只需要设置子元素的样式

absolute + transform

.parent{position:relative;}

.child{position:absolute; left:50%; transform: translateX(-50%);

优点:居中子元素不会对其他元素产生影响

缺点:transform是CSS3的属性,存在兼容性问题

flex + justify-content

.parent{display:flex; justify-content:center;}

优点:只需要设置父元素的样式

缺点:兼容性问题

flex + margin

.parent{display:flex;}

.child{margin:0 auto;}

 

垂直居中

父容器和子容器的高度都未知

table-cell + vertical-align

.parent{display:table-cell; vertical-align:middle;}

优点:兼容性好

absolute + transform

.parent{position:relative;}

.child{position:absolute; top:50%; transform:translateY(-50%);}

优点:子元素不会干扰其他元素

缺点:兼容性

flex + align-item

.parent{display:flex; align-items:center;}

优点:只需要设置父元素

缺点:兼容性问题

水平垂直居中

父容器和子容器的高度都未知

inline-block + text-align + table-cell + vertical-align

.parent{text-align:center; display:table-cell; vertical-align:middle;}

.child{display: inline-block;}

absolute + transform

.parent{position:relative;}

.child{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);}

flex + justify-content + align-item

.parent{display:flex; justify-content:center; align-items:center;}

多列布局

定宽-自适应

float+margin

.left{float:left; width:100px;}

.right{margin-left:120px;}

float+margin+fix

<div class="left"></div>

<div class="right-fix">

<div class="right"></div>

</div>

外层在包裹一个容器

.left{float:left; width:100px; position: relative;}

.right-fix{float:right; width:100%; margin-left:-100px;}

.right{margin-left:120px;}

兼容性很好,但是多了层right-fix的结构

float+overflow

.left{float:left; width:100px; margin-right: 20px;}

.right{overflow:hidden;

table

.parent{display:table; width:100%; table-layout:fixed;}

.left,.right{display:table-cell;}

.left{width:100px; padding-right:20px;}

flex

.parent{display:flex;}

.left{width:100px; margin-right:20px;}

.right{flex:1;}

不定宽-自适应

float + overflow

.left{float:left; margin-right:20px;}

.right{overflow:hidden;}

table

.parent{display:table; width:100%;}

.left,.right{display:table-cell;}

.left{width:0.1%; padding-right:20px;}

flex

.parent{display:flex;}

.left{margin-right:20px;}

.right{flex:1;}

160818、CSS页面布局笔记的更多相关文章

  1. CSS 页面布局、后台管理示例

    CSS 页面布局.后台管理示例 页面布局 1.头部菜单 2.中间内容/中间左侧菜单 3.底部内容 <div class='pg-header'> <div style='width: ...

  2. css页面布局

    写在前面: 页面布局整体上可以分为两类:固定宽度(一般固定960px):流式布局:将流式布局转换为固定布局很容易,只需要外围再包括一个div,为其设置宽度即可. html默认的布局方式是将每个块状标签 ...

  3. CSS页面布局常见问题总结

    在前端开发中经常会碰到各种类型布局的网页,这要求我们对css网页布局非常熟悉.其中水平垂直居中布局,多列布局等经常会被使用到,今天就来解决一下css布局方面的问题. 水平垂直居中的几种方法 说到水平垂 ...

  4. css页面布局总结

    W3C标准:是万维网制定的一系列标准,包括结构化标准语言(html.xml),表现 标准语言(css),行为标准语言(DOM,ECMAScript<javascript>)组成.这个标准倡 ...

  5. CSS页面布局与网格(上)

    1.布局规划 1.1 网格 网格系统是设计师在切分布局时作为参照的一组行和列. 1.2 布局辅助类 类名用于为布局添加样式.为了让样式可以重用,让类名表达其意图. .column { /* 一般列的样 ...

  6. 第6天:DIV+CSS页面布局实战

    今天我从早上9:00写代码一直写到下午18:00,写的我差点抑郁了,还好最后终于写出了一个完整页面,没有做动画效果,就是练习了一下DIV+CSS布局,做的是福务达(www.zzfwd.cn)的主页,真 ...

  7. 一、CSS概述 二、CSS的选择器(认识) 三、CSS样式和属性(练习) 四、重构商城首页DIV+CSS(页面布局)(重点) 浮动/更改显示方式

    一.CSS概述###<1>概念 DIV,就是一个HTML元素,块级元素,通常结合CSS进行页面的布局. CSS,层叠样式表,给HTML元素增强显示. ###<2>作用 样式定义 ...

  8. 3种常见的CSS页面布局--双飞翼布局、粘连布局、左右两列布局

    一.左右两列布局 1.代码如下,可先粘贴复制,自行运行 <!DOCTYPE html><html> <head> <meta charset="UT ...

  9. dic+css页面布局分享

    HTML部分代码<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <t ...

随机推荐

  1. hdu 1348 Wall (凸包模板)

    /* 题意: 求得n个点的凸包.然后求与凸包相距l的外圈的周长. 答案为n点的凸包周长加上半径为L的圆的周长 */ # include <stdio.h> # include <ma ...

  2. Property with &#39;retain (or strong)&#39; attribute must be of object type

    AFNetworking 2.0 当Deployment Target 低于6.0时,AFURLConnectionOperation.h,AFURLSessionManager.h @propert ...

  3. pandas时间序列滑窗

    时间序列数据统计-滑动窗口 窗口函数 import pandas as pd import numpy as np ser_obj = pd.Series(np.random.randn(1000), ...

  4. caffe 中如何打乱训练数据

    第一: 可以选择在将数据转换成lmdb格式时进行打乱: 设置参数--shuffle=1:(表示打乱训练数据) 默认为0,表示忽略,不打乱. 打乱的目的有两个:防止出现过分有规律的数据,导致过拟合或者不 ...

  5. 简体字丶冯|服务网关kong-docker安装

    tags: kong ,服务网关,docker安装教程 grammar_cjkRuby: true --- 作为一名技术探索者,想了解一个未知系统的最有效方法就是去用.然而搭建一个陌生系统的最快捷方法 ...

  6. Linux的Samba服务器

    1.samba服务器概述 Samba最先在Linux和windows两平台之间架起一座桥梁,正是由于samba的出现,我们可以在Linux系统和Windows系统之间相互通信,比如拷贝文件,实现不同操 ...

  7. Drawable资源的初步使用

    刚開始接触到Android的时候,看到类似以下的一个Button: 当时感觉这种button有点像Material Design风格.真的以为是裁剪好的图片,好奇心驱使我上网查找实现的方法,原来不是裁 ...

  8. Graph Visualization

    1. 什么是graph visualization? Graph visualization is a way of representing structural information as di ...

  9. 各类 HTTP 返回状态代码详解(转)

    FTP状态码 一.HTTP状态码 如果某项请求发送到您的服务器要求显示您网站上的某个网页(例如,用户通过浏览器访问您的网页或 Googlebot 抓取网页时),服务器将会返回 HTTP 状态代码以响应 ...

  10. 关于web上文章移植伴随的样式问题

    好多朋友疑问,关于网页上的html文章在不同编辑器和页面之间复制黏贴时伴随的样式(如css)是否也一起被复制.这里统一回答下: 很多人遇见这种情况:网页上看到一篇内容充实主题明确,更重要的是样式精美的 ...