【发布时间】:2015-08-04 15:22:58
【问题描述】:
我的页面最大宽度为 1280 像素。使用margin: 0 auto;,主体在较大的屏幕上居中。现在我想在右下角放置一个元素。这必须修复,因为它应该随着内容滚动。在大于 1280 像素的屏幕上,该元素应保持在居中的主体的一角,而不是粘在窗口的右侧。
元素应该固定在那里,与当前视口宽度无关。
我通过结合使用 media-query 和 CSS3-calc 操作解决了这个问题。对于这个简单的任务来说,这感觉有点过头了,但我找不到像我这样简单的解决方案。这是一些示例 css(我在这里将最大页面宽度更改为 500px):
body {
max-width: 500px;
height: 1000px;
margin: 0 auto;
padding: 0;
border: 1px solid black;
}
div {
position: fixed;
right: 0;
bottom: 0;
height: 30px;
width: 30px;
margin: 0;
padding: 0;
background-color: red;
}
@media all and (min-width: 515px) /*max body width + (element width / 2)*/ {
div {
margin-right: -webkit-calc((100% - 500px) / 2);
margin-right: -moz-calc((100% - 500px) / 2);
margin-right: calc((100% - 500px) / 2);
}
}
JSFiddle:https://jsfiddle.net/nh95dc8u/
我的 JSFiddle 准确地显示了我想要的。我只是在问这是否可以通过更多“标准 CSS”来实现(我不太确定跨不同浏览器的计算)?还有什么更简单的解决方案?
【问题讨论】:
-
你是救世主!!!!太感谢了。这解决了我问题的第一部分。现在我需要解决第二个问题。如何隐藏我的 div 的外部(我的 div 的一部分隐藏在内容之外的正文中,并且现在显示调整大小)。 ?!:) 但我认为最困难的是完成。再次感谢你! ——
标签: html css css-position