postion relative 对 absolute 和 fixed 的限制作用

如果 一个 元素 定位了 absolute , 如果 它的父元素 定位了 relative 那么 该元素的定位会被限制

absolute

1, 限制 left , top , right , bottom , 在 父元素里面 进行 定位。

2, 限制 z-index 层级, 子元素层级和父元素层级一样

3, 限制 在 overflow , 如果 没有父元素 定位 absolute 那么 子元素 overflow 会没有其作用的, 会露出来 超出的部分内容。 如果父元素 加了 定位 relative 那么子元素的 overflow 就可以控制了

fixed的限制

只能限制 子元素的 z-index 层级, 和 父元素层级一样。 其他限制不了

https://www.imooc.com/video/10710

relative 定位和 absolute 定位

relative 定位是 相对 自身的, 也就是 relatIve的定位是 以 top=0 ,left=0 为原点来定位的。 而 absolute 是 以 边界的 四个角为 原点进行定位的。

relative 无相关性

relative 定位,不会影响其他元素的布局和定位,不想 margin 定位,会影响其他元素进行移动。

###尽量避免使用 relative relative 有时候会出现BUG或者是 元素的层级覆盖 absolute 不依赖于 relative , 可以使用其他方式 比如 margin 去定位

###使用 relative 也要使用其最小化原则 即 如果某个元素需要定位, 可以将 其 放入一个 空的 div 里面, 该 div 定位为 relative 然后该元素 可以定位 为 absolute , 这样就不会影响其他元素了。

转载于:https://my.oschina.net/ouminzy/blog/1801804

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: positionabsolutefixed都是CSS中的定位属性。 absolute表示绝对定位,元素的位置相对于最近的已定位的祖先元素(即position属性值为relativeabsolutefixed的元素)来确定。如果没有已定位的祖先元素,则相对于最初的包含块(即文档的根元素)来确定位置。 fixed表示固定定位,元素的位置相对于浏览器窗口来确定,不会随着页面滚动而改变位置。通常用于创建固定的导航栏或悬浮广告等效果。 总的来说,absolutefixed都可以用来控制元素的位置,但是相对定位的元素位置会随着页面滚动而改变,而固定定位的元素位置不会改变。 ### 回答2: CSS中,positionabsolutefixed可以用来指定元素的定位方式。这两种定位方式都是相对于其父元素或浏览器窗口进行定位的。 absolute定位方式的元素会脱离文档流,相对于其最近的定位祖先进行定位。如果没有定位祖先,它会相对于文档的初始包含块进行定位。可以通过top、bottom、left和right属性来控制元素的位置。absolute定位的元素不占用文档流的位置,所以它后面的元素会往前移。 fixed定位方式的元素会相对于浏览器窗口进行定位,而不是相对于其父元素。它不会随页面的滚动而移动,所以它可以用于创建固定的工具栏或导航栏。可以像absolute定位一样使用top、bottom、left和right属性来控制元素的位置。 在使用absolutefixed定位时,需要注意的是,如果父元素使用了overflow:hidden属性,子元素使用了absolutefixed定位后可能会被裁剪,这时可以将父元素的position属性设置为relative来解决问题。 总之,absolutefixed定位都可以用来控制元素的位置,但是它们的定位方式不同,应该根据具体情况选择使用哪种方式。 ### 回答3: positionabsolutefixedCSS中用于定位元素的属性。它们都可以让元素脱离文档流,并根据父级元素或文档窗口进行定位。 首先,positionabsolute属性,它是根据父级元素进行定位的。当设置了absolute属性后,元素会脱离文档流,并相对于最近的已定位祖先元素进行定位。如果没有已定位的祖先元素,则相对于文档的左上角进行定位。这里的“已定位祖先元素”是指position属性值为relativeabsolutefixed的父级元素。 与此相反,positionfixed属性是根据浏览器窗口进行定位的。当设置了fixed属性后,元素会脱离文档流,并相对于浏览器窗口进行定位。这意味着无论用户如何滚动页面,该元素位置都不会改变。fixed属性经常用于创建浮动元素,例如固定在浏览器窗口底部的导航栏。 需要注意的是,fixed属性在移动设备上可能会存在问题,因为它会在滚动过程中一直停留在同一个位置,会影响用户体验。此外,position属性的值还有relative和static。其中,relative属性是根据元素自身进行定位,可以通过top、bottom、left和right属性来调整位置。static属性是默认值,元素按照文档流排列,并在没有设置其他属性时不会被定位。 总的来说,positionabsolutefixed属性都是用于定位元素的,但是它们的定位方式是不同的。使用这些属性可以让页面中的元素按照设计师的意愿进行精确地布局,从而提高网页的可读性和可用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值