【发布时间】:2018-11-26 12:41:08
【问题描述】:
CSS calc 返回错误的 % 值时遇到问题。
我的想法是创建一个粘性侧边栏,您首先在其中滚动到末尾,然后它会一直停留在那里直到内容结束。它适用于 vh 单位,当我为 div 使用绝对高度时,但当我使用 % 时不适用。
.sidebar {
position: sticky;
top: calc(100vh - 100%); <-- does not work
top: calc(100vh - 1600px); <-- works as expected.
}
所以也许我误解了 % 在这种情况下的含义(我的理解:应用类 .sidebar 的对象的高度)还是 calc() 不好用?
编辑: 这就是我的意图(黄色:视口;侧边栏:蓝色;红色:内容)。侧边栏滚动,直到它的底部边缘和视口处于相同的高度,然后只有内容在移动,之后侧边栏的底线和内容处于同一水平。 它实际上适用于固定值。
似乎答案不是使用父母身高,因为这会导致更大的值,导致侧边栏底线高于视口底部,但实际上更低。
谢谢,祝你有美好的一天!
【问题讨论】: