zoukankan      html  css  js  c++  java
  • CSS深入浅出(二)

    一、堆叠上下文

    1、堆叠顺序

    • z-index:<0
    • background
    • border
    • 块级元素
    • 浮动元素
    • 内联元素(文本)
    • z-index:0/auto
    • z-index:>0

    2、堆叠上下文——创建堆叠上下文

    • 根元素 (HTML)
    • z-index 值不为 "auto"的 绝对/相对定位
    • position: fixed
    • opacity 属性值小于 1 的元素
    • transform 属性值不为 "none"的元素
    • 其他

    3、基本原则
    • 谁大谁上:当具有明显的层叠水平标示的时候,如识别的z-indx值,在同一个层叠上下文领域,层叠水平值大的那一个覆盖小的那一个。通俗讲就是官大的压死官小的。
    • 后来居上:当元素的层叠水平一致、层叠顺序相同的时候,在DOM流中处于后面的元素会覆盖前面的元素。

    二、icon全解

    • img icon
    • background icon
    • sppirites icon 精灵图
    • iconfont
      1. htmt,font,unicode
      2. css
      3. js(svg) 推荐使用
    • css做icon (cssicon.space)

    三、移动端页面(响应式)

    1. @media(查询条件){查询条件为真时执行的}——媒体查询(可以用文件代替内容)
    2. 响应式页面制作原则。没图不做(有几个图,做几个页面,无图丑)
    3. 隐藏元素(响应式)。js改状态,不改样式。css做样式
    4. 手机端meta(meta:vp).
    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    
    1. 手机端特性

      • 手机没有hover
      • 手机没有resize
      • 手机没有滚动条
      • 手机又touch时间

    四、flex布局

    1. flex布局之前

      • normal flow (文档流)
      • float clear
      • position relative/absolutive(绝对定位和相对定位)
      • display:inline-bloce
      • 负margin
    2. flex布局特点

      • flex布局与方向无关
      • flex布局与可以实现空间的自由分配、自动对齐
      • flex布局适用于简单的线性布局(更复杂的布局用grid布局)
    3. flex基本概念

      • flex布局基本概念
    4. flex container属性

      • flex-direction
      • flex-wrap
      • flex-flow
      • justify-content
      • align-items
      • align-content
    5. flex items属性

      • flex-grow
      • flex-shrink
      • flex-basis
      • flex
      • order
      • align-self
    6. flex游戏

    五、布局套路

    1. 浮动布局
    1、子元素:float:left;
    2、父元素:添加clearfix类
    3、.clearfix::after{
            content:'';
            display:block;
            clear:both;
        }
    4、剩下的靠经验
    
    1. 平均布局
      靠经验
    2. flex布局
    1、父元素:display:flex;
    2、属性选择
    3、靠经验
    

    六、BFC

    1. BFC描述


      BFC没有定义,只有特性、功能。


      MDN/CSS
    2. 创建BFC

      根元素或其它包含它的元素

      浮动元素 (元素的 float 不是 none)

      绝对定位元素 (元素具有 position 为 absolute 或 fixed)

      内联块 (元素具有 display: inline-block)

      表格单元格 (元素具有 display:
      table-cell,HTML表格单元格默认属性)

      表格标题 (元素具有 display: table-caption,
      HTML表格标题默认属性)

      具有overflow 且值不是 visible 的块元素,

      display: flow-root

      column-span: all应当总是会创建一个新的格式化上下文,即便具有 column-span: all 的元素并不被包裹在一个多列容器中。
    3. BFC的功能

      用 BFC 包住浮动元素。

      用 float + div 做左右自适应布局
    4. 面试技巧

      代码展示给面试官

    七、动态REM

    1. rem是什么
      rem:根元素(html)的font-size
    2. rem和em的区别
      em:自身的font-size
    3. 手机端方案的特点(动态REM实现手机端页面)

      宽度型号多——两种方案

      百分比布局——有bug(淘汰)

      动态REM——使得rem==页面宽度
    <script>
        var pageWidth=window.innerWidth
        document.write('<style>html{font-size:'+pageWidth+'px;}'</style>')
    </script>
    
    1. sass让px自动变为rem——sass安装和使用

      不会用less/sass/scss/wepack 的根源——
      • 不会用命令行
      • 不会英语
      • 不会看文档
  • 相关阅读:
    sabaki and leelazero
    apply current folder view to all folders
    string operation in powershell
    wirte function in powershell
    add environment path to powershell
    Module in powershell
    sql prompt
    vmware中鼠标在部分区域不能使用
    调整多个控件的dock的顺序
    行为型模型 策略模式
  • 原文地址:https://www.cnblogs.com/douglasryan/p/10654855.html
Copyright © 2011-2022 走看看