Web全栈~08.浮动和定位

Web基本笔记~08.浮动和定位

上一期

Float

  1. Float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。CSS Float(浮动)使元素脱离文档流,按照指定的方向(左或右发生移动),直到它的外边缘碰到包含框或另一个浮动框的边框为止。

基本示例

  1. <html>
  2. <head>
  3. <meta charset="utf-8">
  4. <title></title>
  5. <style> img{ width: 200px; float: left; } </style>
  6. </head>
  7. <body>
  8. <div style="width: 350px;height: 500px;">
  9. <img src="./img/but.jpg" alt="按钮"/>
  10. 中国汉朝初年的《尔雅》,是中国百科全书性质著作的渊源;古希腊学者亚里士多德编写过的全面讲述当时学问的讲义,则被西方奉为“百科全书之父”。
  11. 中国古代的类书是一种百科全书式的资料汇编,也有学者认为明朝的《永乐大典》是最早的接近现代意义上的百科全书。
  12. 中国近代的百科全书是20世纪初由西方引进的书体。民国时的著名学者李煜瀛是最早进行西方百科全书研究的人,将这一书体介绍到中国并产生广泛影响的。
  13. </div>
  14. </body>
  15. </html>

在这里插入图片描述

  1. 浮动以后使元素脱离了文档流(在页面中不占据位置)。
  2. 浮动是碰到父元素的边框或者浮动元素的边框就会停止。
  3. 浮动不会重叠。
  4. 浮动只有左右浮动,没有上下浮动。
  5. 浮动以后块级元素在同一行显示,行内元素可以设置宽高。
  6. 元素没有设置宽度和高度时,宽度为内容撑开。

清除浮动的影响

  1. 当元素设置 float 浮动后,该元素就会脱离文档流并向左/向右浮动,直到碰到父元素或者另一个浮动元素,浮动元素会造成父元素高度塌陷。
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title></title>
  6. <style> .out{ background-color: #138496; } .in{ width: 200px; height: 200px; background-color: #7ABAFF; } </style>
  7. </head>
  8. <body>
  9. <div class="out">
  10. <div class="in"></div>
  11. </div>
  12. </body>
  13. </html>

在这里插入图片描述

  1. 父元素高度由子元素撑开。但是给子元素设置浮动后效果后
  2. <style> .out{ background-color: #138496; } .in{ width: 200px; height: 200px; background-color: #7ABAFF; float: left; } </style>

在这里插入图片描述

  1. 所以当我们设置 float 后,要根据不同情况来清除浮动
  2. 如果要设置父标签合适的高度,则必须确定子布局的高度,来计算父布局的合适高度包住子布局。
  3. <html>
  4. <head>
  5. <meta charset="utf-8">
  6. <title></title>
  7. <style> .box{ background-color: pink; } .one,.two,.three{ width: 200px; height: 200px; float: left; } .one{ background-color: red; } .two{ background-color: gold; } .three{ background-color: green; } .footer{ height: 300px; background-color: blueviolet; /*清除*/ clear:both; } </style>
  8. </head>
  9. <body>
  10. <div class="box">
  11. <div class="one"></div>
  12. <div class="two"></div>
  13. <div class="three"></div>
  14. </div>
  15. <div class="footer"></div>
  16. </body>
  17. </html>

Position

  1. position 属性指定了元素的定位类型。这个属性定义建立元素布局所用的定位机制。任何元素都可以定位,不过绝对或固 定元素会生成一个块级框,而不论该元素本身是什么类型。相对定位元素会相对于它在 正常流中的默认位置偏移。元素可以使用的顶部,底部,左侧和右侧属性定位。然而,这些属性无法工作,除非是先设定 position 属性。他们也有不同的工作方式,这取决于定位方法。

在这里插入图片描述

position:sticky

  1. position:sticky 是一个新的 css3 属性, 它的表现类似 position:relative position:fixed position:relative; 而当页面滚动超出目标区域时,它的表现就像 position:fixed,它会固定在目标位置。
  2. 如果同时定义了 left right 值,那么 left 生效,right 会无效,同样,同时定义了 top bottom,则bottom无效

Z-index

  1. z-index 属性设置元素的堆叠顺序。拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面auto 默认。堆叠顺序与父元素相等。注释:元素可拥有负的 z-index 属性值。注释:Z-index 仅能在定位元素上奏效(例如 position:absolute;)该属性设置一个定位元素沿 z 轴的位置,z 轴定义为垂直延伸到显示区的轴。如果为正数,则离用户更近,为负数则表示离用户更远。
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title></title>
  6. <style> .box{ position: relative; } .one{ width: 150px; height: 150px; background-color: #17A2B8; position: absolute; top: 50px; left: 50px; z-index: 666; } .two{ width: 150px; height: 150px; background-color: #95999C; position: absolute; left: 100px; top: 100px; } </style>
  7. </head>
  8. <body>
  9. <div class="box">
  10. <div class="one"></div>
  11. <div class="two"></div>
  12. </div>
  13. </body>
  14. </html>

在这里插入图片描述

position 案例

  1. <html>
  2. <head>
  3. <meta charset="utf-8">
  4. <title></title>
  5. <style> .nav{ width: 100%; height: 61px; position: relative; } .nav li{ float: left; padding: 20px 26px; } .nav a{ color: #000; } .nav-list{ width: 100%; height: 300px; background-color: red; position: absolute; left: 0; top: 100%; display: none; } .nav li:hover>.nav-list{ display: block; } </style>
  6. </head>
  7. <body>
  8. <div class="nav">
  9. <ul>
  10. <li><a href="#">推荐</a></li>
  11. <li><a href="#">热榜</a><div class="nav-list"></div></li>
  12. <li><a href="#">要闻</a></li>
  13. <li><a href="#">小说</a></li>
  14. <li><a href="#">历史</a></li>
  15. <li><a href="#">科技</a></li>
  16. </ul>
  17. </body>
  18. </html>
  19. 下一期对position的多个案例进行深入学习

发表评论

表情:
评论列表 (有 0 条评论,52人围观)

还没有评论,来说两句吧...

相关阅读

    相关 【前端】浮动定位

    浮动和定位 浮动 什么是浮动? ​ 元素的浮动是指设置了浮动属性的元素会脱离标准普通流的控制,移动到其父元素中指定位置的过程。它可以让任何盒子可以在一行排列,

    相关 CSS浮动定位

    这是一个基础知识,也是面试多多少少会问到的。下面我带大家梳理一下! 一、文档流的概念指什么?有哪种方式可以让元素脱离文档流? 文档流,指的是元素排版布局过程中,元素会自动从

    相关 Web~13.BOMDOM

    Web基本笔记~13.BOM [上一期][Link 1] 前言        BOM提供了很多对象,用于访问浏览器的功能,这些功能与任何网页内容无关。多年来,

    相关 css定位浮动

    1.static定位 默认的定位方式,元素出现在正常的流中。静态定位不会受到top,bottom,left,right影响。 2.fixed定位 元素的位置相对于浏

    相关 CSS中的浮动定位

    浮动和定位一直是让我焦头烂额,一直搞不懂,今天就来消除下盲点…… 在了解CSS中的浮动和定位之前有必要先了解清楚标准流和脱离标准流的特性 > 标准流的默认特性 1、分行、

    相关 CSS浮动定位

    这是一个基础知识,也是面试多多少少会问到的。下面我带大家梳理一下! 一、文档流的概念指什么?有哪种方式可以让元素脱离文档流? 文档流,指的是元素排版布局过程中,元素会自动从