我有一个元素:
position:absolute;
left: 70%;
Run Code Online (Sandbox Code Playgroud)
我可以配置元素例如不从左移动超过900px?最大宽度但定位的东西?
Uxi*_*xio 27
您可以使用CSS3媒体查询来实现这一目标
所以:
#element {
position:absolute;
left: 70%;
}
Run Code Online (Sandbox Code Playgroud)
如果您在屏幕较小或调整窗口大小时不希望它覆盖对象,则可以在此之后添加:
@media all and (max-width: 980px) {
#element{
margin-left: 0px;
left: 220px;
}
}
Run Code Online (Sandbox Code Playgroud)
当屏幕宽度小于980px,所述#element对象将被固定到220px.
rgb*_*wed 17
我可以通过使用CSS 中的 min() 函数来做到这一点。
这仅对我有用,因为我试图放置在右侧的东西具有恒定的宽度。
所以我有这个...
#rightFloatyThing {
left: min( calc(100vw - 278px) , 1002px );
}
Run Code Online (Sandbox Code Playgroud)
278px 是右侧浮动物体的宽度。我想始终确保右侧漂浮物在视野范围内。所以它的左侧位置至少总是视图宽度减去右侧物体的宽度。
1002px 是我希望右侧浮动物体能够到达的最右边的距离
编辑: 请务必检查Can I Use for CSS math functions。直到 2020 年初,一些主要浏览器才支持它。
使用 CSS 做到这一点的唯一方法是删除绝对定位,并将其向右浮动。
放一个空的“pusher”div,向左浮动。给它一个 70% 的宽度,一个 900px 的最小宽度;然后将您的元素浮动在它旁边。
否则,您将不得不使用 Javascript。