1.高级布局
《文档流概念》:页面从上至下,块式标签一行一行排列,内联式一行中从左至右排列
《BFC规则》:左右位置(左右margin)垂直位置(上下margin)容器内外(互不影响)
《脱离文档流》:脱离文档流的元素 拥有black块级元素所有
综合使用 em,rem,vw,wh,%布局
流式布局---让布局脱离固定值(一般只是宽)限制,可以根据页面情况改变相应发生改变,整体布局不改变
百分比布局 
响应式布局---不同大小屏幕 显示不同的布局
@media  screen and (max-width:400px ){
            /*.d{background-color: white}*/
            .d1{
                width: 10%;
                background-color: #ff2084;
            }
浮动布局---float
float:left|right
解决问题 :block box同行显示
清浮动:
<!--1.height-->
<!--2.overflow: hidden-->
<!--3.兄弟:clear: left | right | both-->
<!--4.父元素:after {-->
 <!--content: "";-->
 <!--display: block;-->
 <!--clear: both;-->
定位布局---position
position属性:
 statict  默认 不脱离文档流
 relative 不脱离文档流--相对自身
 absolute 完全脱离文档流--相对最近的一个定位的父元素
 fixed     完全脱离文档流--相对窗口
定位后的元素可进行:
top,left,botomn,right操作
z-index:对于脱离文档流的定位元素显示优先级
flex布局---弹性布局
<!--弹性容器属性display:flex-->
<!--容器设置为弹性容器后,内的元素排成一行,不受内元素宽度和的局限.-->
<!--flex-direction--> row | row-reverse | column | column-reverse
<!--flex-wrap-->      nowrap | wrap | wrap-reverse
<!--flex-flow-->      上面2个简写方式
<!--justify-content--> flex-start | flex-end | center | space-between | space-around
<!--align-items-->     flex-start|flex-end|center|baseline|stretch
<!--align-content-->  flex-start|flex-end|center|space- between|space-around|stretch
<!--弹性元素属性-->
<!--order-->
<!--align-self--> auto|flex-start|flex-end|center|baseline|stretch
<!--flex-grow-->
<!--flex-shrink-->
<!--flex-basis-->
2.布局坑
兄弟父子坑
文档流 兄弟:上下取最大 左右相加
float  兄弟:上下左右 相加
父子margin坑: 子margin移动父级的margin
父级设置 content,padding-top,border-top;float;定位只有absolut,fixed有效
 
3.xy居中
水平垂直---两个方向居中
//居中的元素是:<div> </div>标签内的元素   div要设置宽高
方式一:通过父元素 统一设置子元素(一般不这样做,应为内部元素未知)
    <!--子元素知道宽高|不知宽高-->
    水平(block不行):text-aline:center
    垂直:(都行)
          display:table-cell    单元格
          vertical-align:middle
    <!--不兼容问题-->
           display: flex;
    水平: justify-content: center;
    垂直:align-items: center;
方式二:通过子元素自身  单独设置某个(常用)
    inline(不能设置宽高,margin.padding 左右有效)元素:可以设置line-height
    display:block;
 
    block(可设置宽高)元素:可以设置line-height=内容高度(内部的div)+上下高度(相同)
    水平:margin:0 auto;  只适用于block型
    <!--父级相对定位,子集绝对定位   提一句:定位,float的元素变成block型 如果没设宽高 由内容撑开-->
    水平:left:50%
         margin-left:-宽/2px;
    垂直:(宽高要设)
        top:50%
        margin-top:-高/2px;
    <!--有不兼容问题-->
    水平:left:50%
    垂直:(宽高没设,内容撑开)
        top:50%
    transform:translate(-50%,-50%)
    水平:left:0;right:0;top:0;botuom:0;margin:auto;
    垂直:(宽高要设)

web@css普通布局 , 高级布局 , 布局坑的更多相关文章

  1. Responsive Web CSS – 在线响应式布局创建器

    如果您已经使用了 CSS 或前端框架,创建响应式布局应该不难. 然而,如果你刚涉足这类布局,Responsive Web CSS 可以帮助你快速上手. 这是一个基于 Web 的工具,使任何人都可以通过 ...

  2. web app 自适应方案总结 弹性布局之rem

    关于rem,主要参考文档 1.腾讯ISUX (http://isux.tencent.com/web-app-rem.html) 2.http://www.w3cplus.com/css3/defin ...

  3. 精通CSS+DIV网页样式与布局--初探CSS

    CSS英文名Cascading Style Sheet,中文名字叫层叠样式表,是用于控制页面样式并允许将样式信息与网页内容分离的一种标记性语言,DIV+CSS是WEB设计标准,它是一种网页的布局方法. ...

  4. CSS魔法堂:Flex布局

    前言  Flex是Flexible Box的缩写,就是「弹性布局」.从2012年已经面世,但由于工作环境的原因一直没有详细了解.最近工作忙到头晕脑胀,是要学点新东西刺激一下大脑,打打鸡血. Flex就 ...

  5. CSS设置表格TD宽度布局

    使用表格布局时,对单元格的宽度控制很伤脑筋,所以查阅资料整理如下: 一.表格布局table-layout 语法: table-layout : auto | fixed 取值: auto  : 大多数 ...

  6. 从零开始学 Web 之 移动Web(六)响应式布局

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  7. 纯CSS实现移动端常见布局——高度和宽度挂钩的秘密

    纯CSS实现移动端常见布局--高度和宽度挂钩的秘密 不踩坑不回头.之前我在一个项目中大量使用css3的calc计算属性.写代码的时候真心不要太爽啊-可是在项目上线之后,才让我崩溃了,原因非常easy, ...

  8. 你不知道的css各类布局(二)之流体布局、液体布局、栅格布局

    流体布局 什么是流 在谈论流体布局之前我们需要知道一件事情就是何为“流”,所谓“流”就是“文档流”,是css中的一种基本定位和布局 概念 流体布局(Liquid/Fluid Layout)指的是利用元 ...

  9. 你不知道的css各类布局(一)之固定布局、静态布局

    前言 当为大量用户设计网站时,设计人员必须考虑到访问者的差异: 屏幕分辨率, 浏览器的选择, 是否在浏览器最大化状态, 浏览器的额外工具栏的开启(历史记录,书签等), 操作系统和硬件. 我们知道css ...

随机推荐

  1. SQL Server2012安装流程

    今天手比较抽风,把原来的SQL Server给卸载了,卸载还卸了半天,真是…… 安装时找了好多教程,结果都不是很详细,然后准备自己摸索一下,把这个过程记录下来,供大家参考,如果有不当的地方,欢迎指正, ...

  2. nginx配置fcgi

    1.刚开始用网上最多的方式,perl脚本实现cgi,配置最后都完成,一直是504错误,看日志是perl脚本连接超时,可能是版本太旧了吧,nginx更新用不了那种方式了,搞不清楚.貌似那种帖子都是13年 ...

  3. Mongodb aggregation 基本操作示例

    MongoDB二个主要的操作:一个是查询,另一个是统计.对于查询而言,主要是find()方法,再配合Filters组合多个查询条件. 对于统计而言,则主要是aggregate操作,比如 group.s ...

  4. 使用js修改url地址参数

    该方法可以修改url的参数. 例如将 www.baidu.com 修改为 www.baidu.com?name=123 操作为: window.location.href = changeURLArg ...

  5. Js点击按钮下载文件到本地(兼容多浏览器)

    实现点击 用纯 js(非jquery)  下载文件到本地 自己尝试,加网上找了好久未果,如: window.open(url)   location.href=url   form表单提交   ifr ...

  6. 解决 Android Device Monitor 常见问题

    Ø  简介 什么是 Android Device Monitor,中文意思就是安卓设备监视器,用于管理安装设备(手机.模拟器)用的.下面列出 Android Device Monitor 常见的一些问 ...

  7. Creating A Moddable Unity Game

    前言: 对游戏进行修改与拓展(MOD)是我一直以来感兴趣的东西,我的程序生涯,也是因为在初中接触到GBA口袋妖怪改版开始的,改过也研究过一些游戏的MOD实现方式,早就想在自己的游戏中实现“MOD系统” ...

  8. PHP+MySql+Bootstrap实现用户界面数据的删除、修改与批量选择删除——实例操作

    第一步:在数据库中建立要操作的信息表 如下图: 第二步:实现对该信息表中数据的删除功能 代码如下:main(主页面) <!DOCTYPE html><html>    < ...

  9. 利用PHP实现登录与注册功能以及使用PHP读取mysql数据库——以表格形式显示数据

    登录界面 <body><form action="login1.php" method="post"><div>用户名:&l ...

  10. 关于利用PHP访问MySql数据库的逻辑操作以及增删改查实例操作

    PHP访问MySql数据库 <?php //造连接对象$db = new MySQLi("localhost","root","",& ...