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. Elasticsearch分片优化

    原文地址:https://qbox.io/blog/optimizing-elasticsearch-how-many-shards-per-index 大多数ElasticSearch用户在创建索引 ...

  2. eclipse配置文件乱码

    修改文件打开工具 安装文件编辑器插件 然后搜索

  3. jsp过滤器

    1.ip过滤 IpFilter: package com.cn.filter; import java.io.IOException; import javax.servlet.Filter; imp ...

  4. 学院派福利——C#+SQL Server图书管理系统

    这是sql server的第七.八次上机内容,抽了几天时间给做了 在原有的booksDB库中加了一个Admin表:UserName:root,PassWord:123456. 环境:Visual St ...

  5. CorelDrawX8安装时提示已安装另一个版本

    (1)首先卸载VIsualC++ 2015 运行库. (2)如果有VisualC++ 2017运行库,卸载VisualC++2017运行库,即可.

  6. 15.scrapy模拟登陆案例

    1.案例一 a.创建项目 scrapy startproject renren_login 进入项目路径 scrapy genspider renren "renren.com" ...

  7. Asp.Net 初级 高级 学习笔记

    01.Main函数是什么?在程序中使用Main函数有什么需要注意的地方?02.CLR是什么?程序集是什么?当运行一个程序集的时候,CLR做了什么事情?03.值类型的默认值是什么?(情况一:字段或全局静 ...

  8. 嵌入式-迅为iTOP-4418/6818开发板编译Android镜像技术分享

    迅为是基于Ubuntu12.04.2 平台做开发,所有的配置和编译脚本也是基于此平台.如果你对Linux 和Android 开发很熟悉,相信你会根据错误提示逐步找到原因并解决,错误提示一般是选用的平台 ...

  9. Spark思维导图之内存管理

  10. vue请求java服务端并返回数据

    最近在自学vue怎么与java进行数据交互.其实axios还是挺简单的,与ajax请求几乎一样,无外乎也就是要解决下跨域的问题. 废话不多说了,直接贴代码,一看就懂! //向springmvc Con ...