zoukankan      html  css  js  c++  java
  • 绝对定位小结

    1. 设置绝对定位后,元素会脱离标准文档流,其原来的位置会被别的元素替代

    2. span标签被设置成绝对定位,就可以设置height和width属性,而且不占有原本的空间。

       另外,定位absolute的时候,如果top,right,left不设具体值而是默认或者auto的时候,该元素会在其未定位前,及最原来的标准文档流中的位置开始。

    <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8" />

        <title>Document</title>
        <style>
            div{
                width: 600px;
                border: 1px solid red;
                position: relative;
            }
            span{
                position: absolute;
                top: 0;left: 1em;right: 1em;
    width: 100px; height: 300px; margin: 0 auto; background-color: green; } </style> </head> <body> <div>dddddddddddddddddddddddddddddddddddddddd <span>我是span里的东西</span>ddddddddddddddddddddddddddd </div> </body> </html>

    具体可以c参研《css权威指南》一书。

    3. 设置绝对定位后,top:1em;right:2em;这里的top或者right边界,是以外边框来算的,及将margin包住的那个边框。这里设置的width依然是默认的content-box;

    4. 还是上面那段代码,如果把外边距为auto去掉,结果会怎样?

      结果是浏览器代理会忽略掉right的值。这是对从左往右的语言来说。如果是从右往左,用户代理(浏览器)会忽略left;

      即过度受限的情况下,忽略right值。

    5. 如果一边的外边距为auto,另一边有值,则重新计算auto这边的外边距。

    6.
       

    7. 绝对定位元素的垂直居中,同水平居中,设置好定位后,注意top,left,right,bottom都要有,再给margin个auto 0,就可以垂直居中了。绝对定位后的元素可以设置宽高哦。

    8. 在水平布局中,如果值设置为auto,right或left都可以根据其静态位置放置。但在垂直布局上,只有top可以取静态位置。bottom做不到。也许是按照标准文档的顺序来看吧,书上没给出解释。

    9. 如果一个绝对定位元素的大小在垂直方向上过度受限,那么将忽略其bottom,以height为重点布局。

  • 相关阅读:
    饿了么P7级前端工程师进入大厂的面试经验
    前端程序员面试的坑,简历写上这一条信息会被虐死!
    这次来分享前端的九条bug吧
    移动端开发必会出现的问题和解决方案
    创建一个dynamics 365 CRM online plugin (八)
    创建一个dynamics 365 CRM online plugin (七)
    创建一个dynamics 365 CRM online plugin (六)
    创建一个dynamics 365 CRM online plugin (五)
    使用User Primary Email作为GUID的问题
    怎样Debug Dynamics 365 CRM Plugin
  • 原文地址:https://www.cnblogs.com/nostic/p/5739916.html
Copyright © 2011-2022 走看看