div固定顯示的幾種方法
很多時候我們會受到一些需求:
1、div一直置頂
2、div一直置底
3、超過一定的位置之後div置頂
4、超過一定位置之後div置底
那麼下面針對上面的幾個問題寫幾個案例:
一、div一直在螢幕的上方,這個倒是容易我們們直接使用position:fixed;然後設定他的top值和left就可以了,別忘了設定寬度哦
<div class="top">
<div class="topf">青格勒</div>
</div>
<style>
.top,.topf{ height:100px; width:100%;}
.topf{ position:fixed; top:0; left:0; background:#999; text-align:center; font-size:20px; color:#fff;}
</style>
點選這裡檢視demo -》
二、這個跟上面的例子是一樣的,我不不多說了
<div class="bottom">
<div class="bottomf">青格勒</div>
</div>
<style>
.bottom,.bottomf{ height:100px; width:100%;}
.bottomf{ position:fixed; bottom:0; left:0; z-index:12; background:#999; text-align:center; font-size:20px; color:#fff;}
</style>
點選這裡檢視demo -》
三、這個就比較有意思了,有些時候我們們的導航在banner的下方
如下圖:
這時候我們們的需求就出來了,當我們們的捲軸走到banner圖的底部的時候需要把nav的部分懸掛(position:fixed; top:0);
這時候我們們就得計算了,先獲取nav到document頂部的距離,然後在獲取捲軸的長度,相減就能得到window的頂部的距離,當兩者的相減<=0的時候懸掛。
html程式碼如下
<div class="center">
<div class="centerf">青格勒2132132</div>
</div>
CSS程式碼如下:
<style>
.center{ position:relative; z-index:12;}
.center,.centerf{ height:100px; width:100%;}
.centerf{ background:#666; text-align:center; font-size:20px; color:#fff;}
.on{ position:fixed; top:0; left:0; z-index:12;}
.onm{ position:fixed; bottom:0; left:0; z-index:12;}
</style>
JS程式碼如下:
<script type="text/javascript">
$(function () {
function divtop(){
var boxTop = $('.center').offset().top;
var scrTop = $('body,html').scrollTop();
//頭部定位
if ((boxTop - scrTop) < 0){
if ($('.centerf').hasClass('on')){
}else{
$('.centerf').addClass('on')
}
}else{
if ($('.centerf').hasClass('on')){
$('.centerf').removeClass('on')
}else{
}
};
};
divtop();
$(window).scroll(function () {
divtop();
});
$(window).resize(function(){
divtop();
});
});
</script>
點選這裡檢視demo -》
四、還有超過一定位置之後div置底
Html程式碼:
<div class="center">
<div class="centerf">青格勒2132132</div>
</div>
CSS程式碼:
<style>
.center{ position:relative; z-index:12;}
.center,.centerf{ height:100px; width:100%;}
.centerf{ background:#666; text-align:center; font-size:20px; color:#fff;}
.onm{ position:fixed; bottom:0; left:0; z-index:12;}
</style>
JS程式碼:
<script type="text/javascript">
$(function () {
function divbottm(){
var boxTop = $('.center').offset().top;
var scrTop = $('body,html').scrollTop();
var winHei = $(window).height();
//頭部定位
if((boxTop - scrTop - winHei + 100) < 0){
if ($('.centerf').hasClass('onm')){
}else{
$('.centerf').addClass('onm')
}
}else{
if ($('.centerf').hasClass('onm')){
$('.centerf').removeClass('onm')
}else{
}
}
};
divbottm();
$(window).scroll(function () {
divbottm();
});
$(window).resize(function(){
divbottm();
})
});
</script>
看到程式碼很多人都會有一個疑問,為什麼scroll和resize時間中再執行一遍?這是因為有些人在瀏覽網頁的時候會改變瀏覽器的大小的緣故,當瀏覽器的大小有變化的時候我們們帶再次計算數值,然後進行調整,好了,完畢
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69946337/viewspace-2655891/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- javascript隱藏和顯示div的方法JavaScript
- div實現水平垂直居中的幾種方法
- 幾種集合的幾種方法
- win10顯示周幾設定方法 window10怎麼顯示星期幾Win10
- docker 容器如何固定ip,有幾種方式Docker
- MySQL百分比顯示和顯示前百分之幾的方法MySql
- Chrome 開發者工具 network 顯示 Provisional headers are shown 的幾種原因ChromeHeader
- for迴圈—不同div顯示不同樣式
- JavaScript 設定div顯示與隱藏JavaScript
- css如何讓div顯示在最上層CSS
- div固定在頁面底部
- 點選一列顯示其index的三種方法Index
- 實現固定寬高比盒子的幾種方案的總結
- xml操作的幾種方法XML
- CSS 實現 : 滑鼠移動上去顯示 div,移開隱藏 divCSS
- CSS點選隱藏和顯示div效果CSS
- 簡單介紹四種Python 列表反轉顯示的方法Python
- win10顯示卡驅動怎麼更新 升級顯示卡驅動的兩種方法Win10
- JavaScript動畫方式控制div元素的隱藏和顯示JavaScript動畫
- 直播app系統原始碼,固定速度的進度條顯示APP原始碼
- div顯示滾動條(類似合同閱讀)
- 超過固定寬度(或行數)顯示…(或省略)
- 建樹的幾種常用方法
- Laravel 重定向的幾種方法Laravel
- MATLAB 生成exe 的幾種方法Matlab
- div 裡套 span 會在同一行顯示。div 裡套 div 會分不同行顯示。這樣也能實現田字格佈局
- 三種方法教你在 Mac 上顯示隱藏檔案Mac
- css居中幾種方法CSS
- 藍獅主管:641480+滾動條顯示和隱藏的幾個方法
- Laravel 固定每頁顯示條數和顯示頁數(超過部分直接返回空資料)Laravel
- css 實現div內顯示兩行或三行,超出部分用省略號顯示CSS
- js下拉框實現div顯示和隱藏JS
- jQuery控制div顯示和隱藏程式碼例項jQuery
- 我的前端元件 —- 16:9固定寬高比例的div前端元件
- Python中清空list的幾種方法Python
- JavaScript深拷貝的幾種方法JavaScript
- 大資料分析的幾種方法大資料
- 使用ABAP操作Excel的幾種方法Excel