html页面怎么实现背景全屏显示,HTML 全屏背景的方法

(注:一下内容是自己通过网络整理出来的,并非完全自己写的)

全屏背景是当下比较流行的一种网页设计风格,而具体的实现这样的全屏背景无外乎基本就两种方法,一种的通过CSS去实现的(CSS3.0为我们提供了更为丰富的CSS样式控制);另一种就是通过我们熟悉的javascript去实现,这里为了代码方便就直接使用jQuery了。既然提到jQuery,我们就可以想象既然我们能用jQuery写了,那网络上就一定有类似的写好的jQuery插件等着我们用了。

方法一、利用CSS3.0样式新特性实现北京全屏(不支持ie6-8)

html {

background: url(images/bg.jpg) no-repeat center center fixed;

-webkit-background-size: cover;

-moz-background-size: cover;

-o-background-size: cover;

background-size: cover;

}

或:

html{

background:url('background.jpg') no-repeat center center;

min-height:100%;

background-size:cover;

}

body{

min-height:100%;

}

原理:将html及body设置为最小高度为100%,使用css3中的background-size:cover;将背景图片设置成封面全屏模式。

兼容性:

Safari 3+

Chrome Whatever+

IE 9+

Opera 10+

Firefox 3.6+

方法二、使用jQuery实现

HTML代码:

CSS代码:

#bg { position: fixed; top: 0; left: 0; }

.bgwidth { width: 100%; }

.bgheight { height: 100%; }

jQuery代码:

$(window).load(function() {

var theWindow = $(window),

$bg = $("#bg"),

aspectRatio = $bg.width() / $bg.height();

function resizeBg() {

if ( (theWindow.width() / theWindow.height()) < aspectRatio ) {

$bg

.removeClass()

.addClass('bgheight');

} else {

$bg

.removeClass()

.addClass('bgwidth');

}

}

theWindow.resize(resizeBg).trigger("resize");

});

兼容性:

IE7+

任何桌面浏览器

方法二、使用jQuery实现(附)【使用jQuery插件jQuery.fullBg】

具体使用方法在插件地址中有,这里就不做详细说明了。

First comes the plugin code:

/**

* jQuery.fullBg

* Version 1.0

* Copyright (c) 2010 c.bavota - http://bavotasan.com

* Dual licensed under MIT and GPL.

* Date: 02/23/2010

**/

(function($) {

$.fn.fullBg = function(){

var bgImg = $(this);

function resizeImg() {

var imgwidth = bgImg.width();

var imgheight = bgImg.height();

var winwidth = $(window).width();

var winheight = $(window).height();

var widthratio = winwidth / imgwidth;

var heightratio = winheight / imgheight;

var widthdiff = heightratio * imgwidth;

var heightdiff = widthratio * imgheight;

if(heightdiff>winheight) {

bgImg.css({

width: winwidth+'px',

height: heightdiff+'px'

});

} else {

bgImg.css({

width: widthdiff+'px',

height: winheight+'px'

});

}

}

resizeImg();

$(window).resize(function() {

resizeImg();

});

};

})(jQuery)

There is only a little CSS needed for this one:

.fullBg {

position: absolute;

top: 0;

left: 0;

overflow: hidden;

}

#maincontent {

position: absolute;

top: 0;

left: 0;

z-index: 50;

}

If you want your background to stay fixed you can change the .fullBG CSS to this:

.fullBg {

position: fixed;

top: 0;

left: 0;

overflow: hidden;

}

For the HTML markup, you can just add an image tag with an id or class, but you also need to add a div that contains your main content or else it won’t work properly. This is the bare minimum:

To call the jQuery function, add this to the bottom of your web page, right before the closing body tag:

$(window).load(function() {

$("#background").fullBg();

});

Once again, this plugin is pretty simple so no options are available. It pretty much just does what it does.

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值