【CSS】<Cascading Style Sheets>元素浮动&元素定位

简介: 【1月更文挑战第17天】【CSS】<Cascading Style Sheets>元素浮动&元素定位

 一、浮动概述:

       通过设置浮动可以让一个元素向其父元素的左侧或者右侧移动,使用float属性来设置元素浮动。可以通过浮动来设置一些水平方向的布局。

属性值:

image.gif编辑

注意:

       元素设置浮动之后,水平布局遍不再需要强制满足和父元素宽高等式!!!元素设置浮动后,元素会完全从文档流中脱离,不再占用文档流的位置。

浮动特点:

    • 浮动元素完全脱离文档流,不再占据文档流中的位置
    • 设置浮动以后元素会向父元素的左侧或者右侧移动
    • 浮动元素默认不会从父元素中移出
    • 浮动元素向左或者向右移动时,不会超过它前边的其它浮动元素
    • 如果浮动元素的上边是一个没有浮动的块元素,则浮动元素无法上移
    • 浮动元素不会超过它上边的浮动的兄弟元素,最多和他一样高
    • 浮动元素不会覆盖文字,文字会自动环绕在浮动元素的周围,所以我们可以利用浮动来设置文字环绕图片效果

    脱离文档流特点:

    块元素:

      • 款元素不再独占一行
      • 脱离文档流之后,块元素的宽度和高度默认被内容撑开

      行内元素:

        • 行内元素脱离文档流以后会变成块元素,特点和块元素一样

        脱离文档流以后,不需要再区分块和行内元素了!


        二、高度塌陷&BFC:

        1.高度塌陷:

               在浮动布局中,父元素的高度默认是子元素撑开的,当子元素浮动后,其会完全脱离文档流,子元素会从文档流中脱离,将无法撑起父元素的高度,导致父元素高度丢失。父元素高度丢失之后,其下的元素会自动上移,导致布局混乱。

        2.Block Formatting Context:

               BFC(Block Formatting Context)块级格式化环境,BFC是一个CSS中的一个隐含属性,可以为一个元素开启BFC。开启BFC该元素会变成一个独立的布局区域。

        2.1 BFC特点:

          • 开启BFC的元素不会被浮动所覆盖
          • 开启BFC的元素子元素和父元素外边距不会重叠
          • 开启BFC的元素可以包含浮动的子元素

          2.2 开启BFC方式:

            • 设置元素的浮动
            • 将元素设置为行内块元素
            • 将元素的overflow设置为一个非visable的值,开启BFC,使得其可以包含浮动元素

            三、clear属性:

                   如果我们不希望某个元素因为其它元素浮动影响而改变位置,可以通过设置clear属性来清除浮动元素对当前元素所产生的影响。

            属性值:

            image.gif编辑


            相关文章
            |
            1月前
            |
            前端开发 JavaScript
            css之伪类hover改变自身、子元素、其他元素的样式
            css之伪类hover改变自身、子元素、其他元素的样式
            28 0
            |
            2月前
            |
            前端开发 JavaScript 开发者
            CSS隐藏元素的N种方法,你知道哪一种最适合你?
            欢迎来到前端入门之旅!这个专栏是为那些对Web开发感兴趣、刚刚开始学习前端的读者们打造的。无论你是初学者还是有一些基础的开发者,我们都会在这里为你提供一个系统而又亲切的学习平台。我们以问答形式更新,为大家呈现精选的前端知识点和最佳实践。通过深入浅出的解释概念,并提供实际案例和练习,让你逐步建立起一个扎实的基础。无论是HTML、CSS、JavaScript还是最新的前端框架和工具,我们都将为你提供丰富的内容和实用技巧,帮助你更好地理解并运用前端开发中的各种技术。
            |
            3月前
            |
            前端开发 小程序
            CSS元素居中大全
            CSS元素居中大全
            |
            4月前
            |
            前端开发
            【前端|CSS系列第3篇】CSS盒模型、浮动及定位
            【前端|CSS系列第3篇】CSS盒模型、浮动及定位
            |
            4月前
            |
            前端开发 JavaScript
            如何利用jQuery来向一个元素中添加和移除CSS类?
            如何利用jQuery来向一个元素中添加和移除CSS类?
            31 0
            |
            7天前
            |
            XML 前端开发 数据格式
            css元素
            【4月更文挑战第20天】css元素
            16 4
            |
            10天前
            |
            前端开发
            css中几种隐藏元素的方法
            css中几种隐藏元素的方法
            11 0
            N..
            |
            1月前
            |
            前端开发 容器
            CSS 网页布局元素
            CSS 网页布局元素
            N..
            23 1
            |
            1月前
            |
            前端开发 UED 容器
            CSS3美化网页元素
            CSS3美化网页元素
            10 0
            |
            1月前
            |
            移动开发 HTML5
            编程笔记 html5&css&js 024 HTML表单元素
            编程笔记 html5&css&js 024 HTML表单元素