0

在 CSS 中,我从来没有真正理解为什么会发生这种情况,但是每当我分配一些东西 amargin-top:50%时,元素就会被推到页面底部,几乎完全离开页面。我假设 50% 时,元素将位于页面的中间。

设置元素的宽度和高度属性也会发生这种情况。如果我将 div 的宽度设置为 100%,则 div 的右侧会离开可视屏幕,我必须滚动才能看到它。

为什么会发生这种情况,有没有办法解决它?

编辑:

这是我的CSS代码。我也在使用引导程序,但这是我在引导程序之外注意到的一个问题。

html{
height:100%;
min-height: 100%;
min-width: 100%;
}
#button_container{
width:100%;
clear:both;
margin:0 auto;
margin-top: 25%;
}

#donate_section, #contrib_section{
display:inline;
}
#contrib_section{
float:right;
}

样板 HTML 标记:

<body>
    <div id="someid"> 
         <div>
             <a></a>
         </div>
         <div>
             <a></a>
         </div>
     </div>
</body>
4

2 回答 2

1

读这个,然后再读一遍:http ://www.w3schools.com/css/css_boxmodel.asp

您的“宽度”设置仅设置内容部分-因此您的总宽度为内容+边距+填充+边框。因此,如果宽度 = 50%,那么在这一切之后,你真的有更多的 55% 左右(具有正常的、较小的边距/填充/边框)。如果您希望您的 div 在外部仅占 50%,则需要有一个在其外部 50% 的无填充/边距/边框 div,或任何数量的其他解决方案。

您也可能正在处理浏览器渲染并不完美的事实。如果您想避免滚动,通常不应使用 100% 的宽度。(这也是一个很好的“Web 2.0”设计,如果你遵循那所学校——从可用性/可读性的角度来看,你应该在两边都有空白)。

编辑:另外,你的 % 是相对于宽度,而不是高度。例如,参见CSS 流体布局:margin-top 基于百分比随着容器宽度增加而增加

于 2013-02-17T03:40:38.643 回答
0

引用通常与父元素“相对”。除非你说的是body标签的第一个孩子。

于 2013-02-17T03:41:02.730 回答