zoukankan      html  css  js  c++  java
  • 如何让position fixed不再基于浏览器窗口定位

     position:fixed默认是相对浏览器定位的。

    就是将某个元素固定在浏览器的某个确定的位置,不随滚动条的移动而变化;

     

    MDN对position: fixed有一个注释:

     

    当元素祖先的 transform 属性非 none 时,容器由视口改为该祖先。

     

    也就是说如果想让fixed不相对浏览器定位,只要给它的随便哪个祖先设上非none的transform,问题就解决了。这祖先可以是static的,也就是说随便哪个祖先都行。比如说给body设一个transform: translateZ(0);,测试有效。

     

    不过想让 position:fixed 的元素相对于父元素定位,应该改成 absolute 以及父元素 relative。而不是让 fixed 干不应该干的事。相对父元素定位需要position fixed吗?难道这是想搞事情啊!脱离党指导路线的都不是什么好路子!

     

    而且transform会对定位产生副作用,建议尽量避免一起使用。

  • 相关阅读:
    常用基础命令
    Vim
    Linux目录结构
    稀疏数组
    数据结构概述
    天天用的命令
    Mysql和redis的安装
    回文排列
    URL化
    在word中做复选框打对勾钩
  • 原文地址:https://www.cnblogs.com/ranyonsue/p/11889057.html
Copyright © 2011-2022 走看看