2

我有一个背景渐变,它看起来很棒,但我有一个问题,在短页面上,背景太长并导致不必要的滚动条,而在长页面上,背景将开始重复而不是拉伸以填充整个页面。

这是我正在使用的 CSS:

html, body{
font-size:1em;
font-family: "ff-dagny-web-pro", Helvetica, Arial, sans-serif;
line-height:1.438em;
color:#222;
margin: 0;
padding: 0;
text-align: justify;
background: rgb(0,0,0); /* Old browsers */
background: -moz-linear-gradient(top, rgba(0,0,0,1) 25%, rgba(209,209,209,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(25%,rgba(0,0,0,1)), color-stop(100%,rgba(209,209,209,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(0,0,0,1) 25%,rgba(209,209,209,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(0,0,0,1) 25%,rgba(209,209,209,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(0,0,0,1) 25%,rgba(209,209,209,1) 100%); /* IE10+ */
background: linear-gradient(to bottom, rgba(0,0,0,1) 25%,rgba(209,209,209,1) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#d1d1d1',GradientType=0 ); /* IE6-9 */

}

当我添加height: 100%;它时,它会导致短页面上的滚动条。我试图通过使用来删除它们,overflow: hidden;但这会导致长页面上的任何内容都无法显示!此外,如果我不使用height: 100%;,那么渐变只会填充大约一半的页面并重复。

我对要做什么或尝试解决此问题感到有些困惑。

注意:虽然我更喜欢 CSS 解决方案,但如果有一个可行的 javascript 解决方案(使用 jQuery),我愿意尝试让它工作。

4

3 回答 3

2

导致此问题的原因是我尝试实施“粘滞页脚”。我删除了所有高度要求(IE:min-heightheight),浏览器相应地调整没有问题。

作为旁注,我使用以下代码来解决我的粘页脚问题:

$(function() {
    var height = $(window).height() - ($("header").outerHeight() + $("footer").outerHeight() );
    $("#page-content").css("min-height",height+"px");
});
于 2012-10-04T22:23:10.573 回答
0

…………………………………………………………………………………………

你好现在习惯了min-height:100%

现场演示

于 2012-09-18T05:15:03.563 回答
0

添加height: 100%;到您的 CSS 规则中,它将被修复。

于 2012-09-18T05:15:18.313 回答