總結HTML全螢幕背景的方法

高洛峰
發布: 2017-03-28 11:50:22
原創
3010 人瀏覽過

全螢幕背景是當下比較流行的一種網頁設計風格,而具體的實現這樣的全螢幕背景無外乎基本就兩種方法,一種的透過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 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:

登入後複製

Once again, this plugin isso pretty simple

rrreee

Once again, this plugin isso pretty simple

options are available. It pretty much just does what it does.###

以上是總結HTML全螢幕背景的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!