Fork me on GitHub

CSS中的定位

     position 属性规定应用于元素的定位方法的类型(static、relative、fixed、absolute )。

     HTML 元素默认情况下的定位方式为 static(静态)。静态定位的元素不受 top、bottom、left 和 right 属性的影响。position: static; 的元素不会以任何特殊方式定位;它始终根据页面的正常流进行定位.

     position: relative; 的元素相对于其正常位置进行定位。设置相对定位的元素的 top、right、bottom 和 left 属性将导致其偏离其正常位置进行调整。不会对其余内容进行调整来适应元素留下的任何空间。

     position: absolute; 的元素相对于最近的定位祖先元素进行定位(而不是相对于视口定位,如 fixed)。然而,如果绝对定位的元素没有祖先,它将使用文档主体(body),并随页面滚动一起移动。注意:“被定位的”元素是其位置除 static 以外的任何元素。

     还有一个是重叠元素,应用也非常广泛,Z-index,Z-index 仅能在定位元素上奏效!最近我发现有几种情况这个是不会奏效的,我把情况和解决办法写在了下面;

       ①、父元素position为relative时,子元素的z-index失效。

    解决:父元素position改为absolute或static

  ②、该元素没有设置position属性为非static属性。

    解决:设置该元素的position属性为relative,absolute或是fixed中的一种。

  ③、该标签在设置z-index的同时还设置了float浮动

    解决:float去除,改为display:inline-block;

              2021-11-07 16:02:28

posted @ 2021-11-07 16:08  十点差三分yn  阅读(54)  评论(0编辑  收藏  举报
1