如何使固定位置的div继承父级的宽度?

阿拉·萨利赫(Alaa Saleh)

有固定位置div可以继承父级宽度的方法吗?

我知道固定宽度是相对于窗口的宽度,因此此代码不起作用:

#wrapper{
        position: relative;
        width:500px;
        height: 20px;
        background-color: blue;
}

#header{
        position: fixed;
        width: 100%;
        height: 20px;
        background-color: rgba(255,0,0,0.5);
}
<div id="wrapper">
  #wrapper
        <div id="header">
          #header
        </div>
    </div>

    

马克·奥德特

使用选择器上属性inheritwidth#header

为什么这样有效

通过指定position: fixed#header元件,所述#header元件的位置被计算相对于如在CSS2规范指定的视口:

http://www.w3.org/TR/2011/REC-CSS2-20110607/visuren.html#positioning-scheme

但是,position: fixed不会更改DOM结构,这意味着该#wrapper元素仍然是该#header元素的父级结果,#header即使相对于视口确定了其位置,仍然可以从其父元素继承属性值。

还请注意,如果您为宽度指定百分比值,则固定元素将根据规格中的视口计算该值。但是,这与无关width: inherit,它从父元素而不是视口获取其值。

参见:http : //www.w3.org/TR/2011/REC-CSS2-20110607/visudet.html#propdef-width

例如,如果将color属性添加#wrapper,它将被继承#header

区别在于的初始值/默认值width是,auto而forcolor则是inherit要获取父项的with属性,您需要指定width: inherit,而不是width: 100%;

注意:父元素和包含块之间有细微的区别。在大多数情况下,两者是相同的,但是对于固定位置的元素,它们是不同的。

#wrapper {
  position: relative;
  width: 500px;
  height: 20px;
  background-color: blue;
  color: white;  /* for demo */
}
#header {
  position: fixed;
  width: inherit;
  height: 20px;
  background-color: rgba(255, 0, 0, 0.5);
}
<div id="wrapper">
  #wrapper
  <div id="header">
    #header
  </div>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

DIV CSS布局-固定位置展开父级

来自分类Dev

如何基于父元素设置具有固定位置的div百分比宽度

来自分类Dev

固定父级内的相对定位div

来自分类Dev

固定位置的div宽度问题

来自分类Dev

固定位置div的宽度问题

来自分类Dev

当以百分比声明父级宽度时,固定位置的子级是否具有与其父级相同的确切宽度?

来自分类Dev

如何使div的宽度超出父级的宽度?

来自分类Dev

固定位置子项时从Bootstrap容器继承宽度

来自分类Dev

固定位置元素继承弹性项目的宽度

来自分类Dev

定位父级div

来自分类Dev

使子div大于固定位置父div

来自分类Dev

如何以特定的宽度和固定位置将div居中?

来自分类Dev

如何让div / span“填写”页面的剩余宽度/高度,并保持固定位置?

来自分类Dev

如何将div以特定宽度和固定位置居中?

来自分类Dev

如何使具有nowrap的父级继承内联块的宽度

来自分类Dev

Bootstrap-为什么固定位置的div的宽度减小?

来自分类Dev

获取具有固定位置的div以填充宽度

来自分类Dev

获取具有固定位置的div以填充宽度

来自分类Dev

固定位置-宽度错误

来自分类Dev

如何使子div保持固定位置?

来自分类Dev

DIV背景:如何固定位置

来自分类Dev

如何使div固定位置水平滚动?

来自分类Dev

如何相对于固定位置div定位div?

来自分类Dev

将div与其父div的底部对齐,同时保持父级高度为100VH,而不使用固定位置

来自分类Dev

如何将仅具有最大宽度且具有固定位置的div水平居中?

来自分类Dev

将“位置:固定” div的宽度设置为与父div(flexbox项)相同的宽度

来自分类Dev

div彼此相邻放置,而不管父级宽度如何

来自分类Dev

父级中的两个div(左,右),宽度固定的右,左填充可用空间,都在同一行中。(无相对/绝对位置)

来自分类Dev

固定位置填充div

Related 相关文章

  1. 1

    DIV CSS布局-固定位置展开父级

  2. 2

    如何基于父元素设置具有固定位置的div百分比宽度

  3. 3

    固定父级内的相对定位div

  4. 4

    固定位置的div宽度问题

  5. 5

    固定位置div的宽度问题

  6. 6

    当以百分比声明父级宽度时,固定位置的子级是否具有与其父级相同的确切宽度?

  7. 7

    如何使div的宽度超出父级的宽度?

  8. 8

    固定位置子项时从Bootstrap容器继承宽度

  9. 9

    固定位置元素继承弹性项目的宽度

  10. 10

    定位父级div

  11. 11

    使子div大于固定位置父div

  12. 12

    如何以特定的宽度和固定位置将div居中?

  13. 13

    如何让div / span“填写”页面的剩余宽度/高度,并保持固定位置?

  14. 14

    如何将div以特定宽度和固定位置居中?

  15. 15

    如何使具有nowrap的父级继承内联块的宽度

  16. 16

    Bootstrap-为什么固定位置的div的宽度减小?

  17. 17

    获取具有固定位置的div以填充宽度

  18. 18

    获取具有固定位置的div以填充宽度

  19. 19

    固定位置-宽度错误

  20. 20

    如何使子div保持固定位置?

  21. 21

    DIV背景:如何固定位置

  22. 22

    如何使div固定位置水平滚动?

  23. 23

    如何相对于固定位置div定位div?

  24. 24

    将div与其父div的底部对齐,同时保持父级高度为100VH,而不使用固定位置

  25. 25

    如何将仅具有最大宽度且具有固定位置的div水平居中?

  26. 26

    将“位置:固定” div的宽度设置为与父div(flexbox项)相同的宽度

  27. 27

    div彼此相邻放置,而不管父级宽度如何

  28. 28

    父级中的两个div(左,右),宽度固定的右,左填充可用空间,都在同一行中。(无相对/绝对位置)

  29. 29

    固定位置填充div

热门标签

归档