• Css之父元素子元素 定位


    1.优先级:id的优先级>class的优先级哈。如果div的属性和class的相同时,也会优先class的内容噢~

    2.子元素和父元素同为position:absolute的时候,不管子元素的z-index是不是比父元素的小,都会覆盖父元素。

    3.position中absolute和relative的区别:前者会覆盖。后者就相当于占位一样,不能覆盖。

    详细的定位区别参考:http://bbs.blueidea.com/thread-2733320-1-1.html

    4.position中absolute和relative的局限性:

    relative————(css)

     
    1. /* CSS Document */   
    2. div   
    3. {   
    4. margin:0;   
    5. }   
    6. .a   
    7. {   
    8. 150px;   
    9. height:150px;   
    10. background:#f00;   
    11. }   
    12. .b   
    13. {   
    14. position:relative;   
    15. top:20px;   
    16. left:10px;   
    17. 50px;   
    18. height:50px;   
    19. background:#ff0;   
    20. }   


    html:

    <div class="a">1111111111111111<div class="b"></div>1111111111</div>

    显示图片:

     

    由于使用绝对定位会保留原有的空间大小,而用了相对定位后,文本之间会出现空白区域,又因为相对定位显示的优先级会更高,所以会覆盖父元素的文本内容。

    absolute————(css)

    1. /* CSS Document */   
    2. div   
    3. position:absolute;   
    4. margin:0;   
    5. }   
    6. .a   
    7. {   
    8. top:0px;   
    9. left:0px;   
    10. 150px;   
    11. height:150px;   
    12. background:#f00;   
    13. }   
    14. .b   
    15. {   
    16. top:150px;   
    17. left:0px;   
    18. 50px;   
    19. height:50px;   
    20. background:#ff0;   
    21. }   


    html:

    <div class="a">1111111111<br><br><br><br><br><br><br><br><br><br><br>1111111111</div>
    <div class="b"></div>

    显示图片:

     

    由于两个class都定义了绝对定位,所以无法调整,会导致页面出现异常。


    5.浮动float和固定元素:
    当一个元素定义了float的时候,如果第二个元素和第一个元素的和相加小于浏览器的宽,则会显示在同一行。

     
    1. /* CSS Document */  
    2. .a  
    3. {  
    4. 150px;  
    5. height:150px;  
    6. background:#f00;  
    7. float:left;  
    8. }  
    9. .b  
    10. {  
    11. 200px;  
    12. height:150px;  
    13. background:#ff0;  
    14. }  


    HTML:
    <div class="a">111</div>
    <div class="b">222</div>
    显示图片:

    因为b是固定元素,所以a会覆盖一部分。


    当第二个(即时第二个元素是float:left)第三个元素相加还是小于浏览器的宽的时候,还是会显示在同一行。

     
    1. /* CSS Document */  
    2. .a  
    3. {  
    4. 150px;  
    5. height:150px;  
    6. background:#f00;  
    7. float:left;  
    8. }  
    9. .b  
    10. {  
    11. 200px;  
    12. height:150px;  
    13. background:#ff0;  
    14. float:right;  
    15. }  
    16. .c  
    17. {  
    18. 150px;  
    19. height:150px;  
    20. background:#f0f;  
    21. }  


    html:
    <div class="a">111</div>
    <div class="b">222</div>
    <div class="a c">333</div>
    显示图片:

    <div class="a c">当a和c元素都有相同属性的时候,优先c元素呦。

  • 相关阅读:
    rails时间问题
    stringify_keys 和symbolize_keys
    thritf
    Nginx负载均衡反向代理
    CentOS 7 yum 安装 Nginx
    CentOS 7安装与配置Tomcat8
    CentOS 7安装与配置JDK8
    系统数据字典模块设计
    mysql视图
    阿里云maven中央仓库
  • 原文地址:https://www.cnblogs.com/imyp/p/4833632.html
Copyright © 2020-2023  润新知