在html或body中设置全局变量

时间:2012-06-12 00:00:15

标签: html css

我对以下css有一些疑问:

html, body {
    height:100%;
    min-width:100%;
    position:absolute;
}

html {
    background: none repeat scroll 0 0 #fff;
    color:#fff;
    font-family:arial,helvetica,sans-serif;
    font-size:15px;
}


  1. 是否需要在html和body上将高度和最小宽度设置为100%?有什么好处?
  2. 使用绝对位置的原因是什么?
  3. 为什么他们在html而不是正文上设置背景/颜色/字体?有区别吗?或者只是偏好?

2 个答案:

答案 0 :(得分:4)

  1. 通常没必要。但是,有几次你可能需要它。例如,您的基站/站点范围的网站css文件可能指定大小不同(您知道那些侧面只是边界的站点,通常是博客?这些宽度已经调整大小)。请注意,当您拥有父容器的百分比时。所以Div A可能有width: 100%,但如果它的父容器有width: 500px,则Div A将有100%的500px。

  2. 我认为html + body上没有position: absolute的原因。绝对定位的一个副作用是元素不再与其余元素“浮动内联”(不确定如何描述/说明这一点)。

    例如,position: relative会忽略绝对定位的元素。因此,如果您有图像A(绝对)和图像B(相对)而B具有left: 10px;,则图像B将偏离父级的左侧,而不是A本来的位置。希望我在这里有意义。

    因此,每当我有背景图像时,有时我只会设置“position:absolute”。如果它是第一个孩子,那么一切都将显示在它上面(因为新元素“添加在顶部”并忽略绝对定位的元素。)

  3. 正文会继承这些属性,所以是的,只是偏好。

答案 1 :(得分:2)

将元素的宽度或高度设置为100%仅在其父元素也是该维度的100%时才有效。这意味着如果主体甚至html标签由于某种原因不是高度或宽度的100%,那么其中包含这些属性的元素将具有0高度或宽度。

例如:http://jsfiddle.net/KZaum/