zoukankan      html  css  js  c++  java
  • 详解CSS中的浮动属性

    前言

       浮动作为CSS中常用的布局方式,本文将详细介绍浮动内容

    定义

    【float浮动】

      浮动元素会脱离普通流,然后按照指定的方向,向左或向右移动,直到碰到父级边界或另外一个浮动元素

      【值】left | right | none | inherit

      【继承性】无

    【特性】

      【1】浮动流

        正常流中的元素一个接一个排列,浮动元素也构成浮动流

      【2】块级框

        浮动元素自身会生成一个块级框,不论这个元素本身是什么,使浮动元素的周围的外边距不会合并

      【3】包裹性

        浮动元素的包含块是指其最近的块级祖先元素,后代的浮动元素不应该超过包含块的上下右边界。

      若不设置包含块的高度,包含块若浮动,则包含块会延伸,进而包含所有的后代浮动元素;

      若不设置包含块的宽度,包含块若浮动,则包含块的宽度由后代浮动元素撑开

      【4】破坏性

        浮动元素脱离正常流,并且破坏了自身的行框属性,使其包含块元素的高度塌陷,使浮动框旁边的行框被缩短,从而为浮动框留出空间,行框围绕浮动框重新排列

    【表现】

      【1】浮动元素的左(右)外边界必须是源文档中的之前出现的左浮动(有浮动)元素的右(左)外边界。除非后出现浮动元素的顶端在先出现浮动元素的底端下

      【2】左浮动元素的右外边界不会再其右边右浮动元素的左边界的右边。

      【3】左(右)浮动元素左边(右边)有一个浮动元素,前者的右外边界不能再其包含块右(左)边界的右边(左边)

      【4】浮动元素的左(右)外边界不能超出其包含块元素的左(右)外边界

      【5】一个浮动元素的顶端不能比其父元素的内顶端高。若果一个浮动元素在两个合并外边距之间,防止这个浮动元素时相当于在两个元素之间有一个块级父元素

      【6】浮动元素的顶端不能比之前所有浮动元素怒或块级元素的顶端更高

      【7】浮动元素必须尽可能高的放置

      【8】左浮动元素必须向左尽可能远。位置越高,就会浮动的越远

    【重叠】

      浮动元素超出父元素边界的方法有两种:

        1.浮动元素的宽度大于父元素的宽度

        2.设置负外边距。如果浮动元素存在负外边距,则浮动元素和正常流元素重叠

          【1】行内框和一个浮动元素重叠时,其边框、背景、内容都在该浮动元素之上显示

          【2】块级框和一个浮动元素重叠时,其边框和背景在浮动元素之下显示,内容在浮动元素之上显示。

  • 相关阅读:
    Android权限大全(链接地址整理)
    Android6.0运行时权限(基于RxPermission开源库)
    Android6.0机型上调用系统相机拍照返回的resultCode值始终等于0的问题
    使用AccessibilityService模拟点击事件失败的分析
    Android混淆打包配置总结
    okhttputils开源库的混淆配置(Eclipse)
    Android布局中的空格以及占一个汉字宽度的空格,实现不同汉字字数对齐
    java开发者大会:总结
    JAVA开发者大会:拍拍贷MQ系统原理与应用
    消息总线真的能保证幂等?
  • 原文地址:https://www.cnblogs.com/controlms/p/7762266.html
Copyright © 2011-2022 走看看