Position属性有哪些值,各有什么特点?

[[409479]]

本文转载自微信公众号「三分钟学前端」,作者sisterAn。转载本文请联系三分钟学前端公众号。

右江网站建设公司创新互联建站,右江网站设计制作,有大型网站制作公司丰富经验。已为右江超过千家提供企业网站建设服务。企业网站搭建\成都外贸网站制作要多少钱,请找那个售后服务好的右江做网站的公司定做!

positon

定义和用法:position 属性规定元素的定位类型。

说明:这个属性定义建立元素布局所用的 定位机制 。任何元素都可以定位,不过绝对或固定元素会生成一个块级框,而不论该元素本身是什么类型。相对定位元素会相对于它在正常流中的默认位置偏移。

—— 来自 w3school

position 有以下可选值:

描述
absolute生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
fixed生成绝对定位的元素,相对于浏览器窗口进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
relative生成相对定位的元素,相对于其正常位置进行定位。因此,"left:20" 会向元素的 left 位置添加 20 像素。
stickyCSS3 新增,粘性定位,相对于最近的一个拥有“滚动机制”的祖先上(当该祖先的overflow 是 hidden, scroll, auto 或 overlay时,即不是 visible 时)。它的行为就像 position:relative 而当页面滚动超出目标区域时,它的表现就像 position:fixed,它会固定在目标位置。
static默认值。没有定位,元素出现在正常的流中 (忽略 left、top、right、bottom 或者 z-index 声明)。
inherit规定应该从父元素继承 position 属性的值。

其中,CSS 定位机制:

CSS 有三种基本的定位机制:普通流、浮动和绝对定位。

除非专门指定,否则所有框都在普通流中定位。也就是说,普通流中的元素的位置由元素在 (X)HTML 中的位置决定。

块级框从上到下一个接一个地排列,框之间的垂直距离是由框的垂直外边距计算出来。

行内框在一行中水平布置。可以使用水平内边距、边框和外边距调整它们的间距。但是,垂直内边距、边框和外边距不影响行内框的高度。由一行形成的水平框称为行框(Line Box),行框的高度总是足以容纳它包含的所有行内框。不过,设置行高可以增加这个框的高度。

position: absolute;

绝对定位 ,绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于 :

 
 
 
 
  1. one
 
  • two
  •  
  • three
  •  
     
     
     
     
    1. div { 
    2.     width: 100px; 
    3.     height: 100px; 
    4.  
    5. .one { 
    6.     background: red; 
    7.  
    8. .two { 
    9.     background: yellow; 
    10.     position: absolute; 
    11.     top: 50px; 
    12.     left: 50px; 
    13.  
    14. .three { 
    15.     background: green; 

    position: fixed;

    固定定位 ,与绝对定位相似,但元素的包含块为 viewport 视口。该定位方式常用于创建在滚动屏幕时仍固定在相同位置的元素。在下面的示例中,"one" 元素定位在离页面顶部 80px,离页面左侧 20px 的位置。

      
     
     
     
    1.  
    2.  one 
    3.  two 
    4.  
     
     
     
     
    1. .an { 
    2.     width: 500px; 
    3.     height: 300px; 
    4.     overflow: scroll; 
    5.     background: indianred; 
    6.  
    7. .one { 
    8.     position: fixed; 
    9.     top: 50px; 
    10.     left: 50px; 
    11.     background: red; 
    12.     width: 100px; 
    13.     height: 100px; 
    14.     color: white; 
    15.  
    16. .two { 
    17.     background: yellow; 
    18.     height: 500px; 

    position: relative;

    相对定位 ,相对于其正常位置进行定位,不影响其他元素的偏移。

     
     
     
     
    1. one 
    2. two 
    3. three 
     
     
     
     
    1. div { 
    2.     width: 100px; 
    3.     height: 100px; 
    4.     color: white; 
    5.  
    6. .one { 
    7.     background: red; 
    8.  
    9. .two { 
    10.     background: yellow; 
    11.     position: relative; 
    12.     top: 50px; 
    13.     left: 50px; 
    14.  
    15. .three { 
    16.     background: green; 

    position: sticky;

    粘性定位 ,可以被认为是相对定位和固定定位的混合。元素在跨越特定阈值前为相对定位,之后为固定定位

    这是一个结合了 position:relative 和 position:fixed 两种定位功能于一体的特殊定位。常见的吸顶、吸底(头部返回栏,底部切换栏等)的效果都是使用这个属性:

    注意:

    position: static;

    静态定位 ,HTML 元素默认情况下的定位方式为 static(静态),静态定位的元素不受 top、bottom、left 和 right 属性的影响,它始终根据页面的正常流进行定位

    position: inherit;

     

    inherit 值如同其他 css 属性的 inherit 值,即继承父元素的 position 值。

    新闻标题:Position属性有哪些值,各有什么特点?
    URL标题:http://www.mswzjz.cn/qtweb/news6/214556.html

    攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

    广告

    声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能

    贝锐智能技术为您推荐以下文章

    网站导航知识

    分类信息网站