CSS position:fixed 元素在一定的容器内固定定位

position:fixed;默认是相对浏览器窗口定位的,如果想要让一个元素相对一个div容器内固定定位,html部分如下:

  <div id="parent" >
        <div id="fixed_obj" style=" position:fixed; margin:0;color:#f00; ">
            <div>要置顶的导航栏</div>
        </div>
    <p>cccccccccccccccccccc</p>
  </div>
 </body>```

需要让#fixed_obj元素在#parent容器内固定置顶,css样式如下:
```#parent{
  width:60%; height:60%; 
  margin:50px auto; 
  border:1px solid #f00;
 overflow-y:scroll;
}

#fixed_obj{
  position:fixed; 
  margin:0; /*关键*/
  color:#f00;
}```

所以,需要定位的元素除了position:fixed以外,需要通过margin来调距离,而不是left和top;


BUT......IE6、IE7(quirk模式)、IE8(quirk模式) 浏览器将 'position' 特性的 fixed 值当作错误值处理。从而导致使用固定定位的元素使用 'position' 的默认值 static。即这个元素在 此时 变成了普通流中的元素,这必然会导致布局错位等问题。

解决办法请参照:http://www.cnblogs.com/hooray/archive/2011/05/20/2052269.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,703评论 1 92
  • CSS 定位 CSS有三种基本的定位机制:普通流,浮动,绝对定位(absolute, fixed):普通流是默认定...
    _空空阅读 11,106评论 0 15
  • 一:在制作一个Web应用或Web站点的过程中,你是如何考虑他的UI、安全性、高性能、SEO、可维护性以及技术因素的...
    Arno_z阅读 5,059评论 0 1
  • 当在这一个页面上实现布局和定位有几种不同的技术。使用哪种技术,很大程序上取决于内容和目标页面,因为有很多技术比别人...
    lulu_c阅读 4,837评论 0 5
  • 最近是一个字也写不出来了,所以对于能写字的人越发崇拜了,身边有个做文案编辑的朋友,开了自己的微信公众号,开始人物志...
    西西西虹_28f0阅读 2,325评论 0 0

友情链接更多精彩内容