CSS3 calc實現滾動條出現頁面不跳動
當頁面內容動態載入,開始沒有滾動條,內容增多後出現滾動條,這時使用固定寬度居中對齊佈局會向左偏移一個滾動條寬度。解決方法可以給內容全部新增overflow-y:scroll;或者是根據內容用css填充好再補充內容。本文介紹的是calc來計算滾動條寬度,當有滾動條時,內容外部也給它模擬一個滾動條寬度,因而就不會偏移了。
很簡單,只要一行程式碼就搞定了:
.wrap-outer {
margin-left: calc(100vw - 100%);
}
或者:
.wrap-outer {
padding-left: calc(100vw - 100%);
}
然後就可以慶祝放鞭炮啦!!
首先,.wrap-outer指的是居中定寬主體的父級,如果沒有,建立一個(使用主體也是可以實現類似效果,不過本著寬度分離原則,不推薦);
然後,calc是css3中的計算,IE10+瀏覽器支援,IE9瀏覽器基本支援(不能用在background-position上);
最後,100vw相對於瀏覽器的window.innerWidth,是瀏覽器的內部寬度,注意,滾動條寬度也計算在內!而100%是可用寬度,是不含滾動條的寬度。
於是,calc(100vw - 100%)就是瀏覽器滾動條的寬度大小(如果有,如果沒有滾動條則是0)!左右都有一個滾動條寬度(或都是0)被佔用,主體內容就可以永遠居中瀏覽器啦,從而沒有任何跳動!
相關推薦
CSS3 calc實現滾動條出現頁面不跳動
當頁面內容動態載入,開始沒有滾動條,內容增多後出現滾動條,這時使用固定寬度居中對齊佈局會向左偏移一個滾動條寬度。解決方法可以給內容全部新增overflow-y:scroll;或者是根據內容用css填充好再補充內容。本文介紹的是calc來計算滾動條寬度,當有滾
vw讓overflow:auto頁面滾動條出現時不跳動
一、水平居中佈局與滾動條跳動的千年難題 當前web屆,絕大多數的頁面間佈局都是水平居中佈局,主體定個寬度,然後margin: 0 auto的節奏~ 例如,婦女之友大淘寶的首頁: 然而,這種佈局有一個存在一個影響使用者體驗的隱患。應該都知道,現代瀏覽器滾動條預設是ov
CSS vw讓overflow:auto頁面滾動條出現時不跳動
最開始的需求是出現一個彈出框,彈出框下面部分不會滾動,但是發現一個問題,就是不滾動和可以滾動的區別是滾動條,而滾動條佔據了寬度,設定100%就會使內容各種跳,一開始用了各種方法,js用過,但是不好,雖然我是點選事件,但是能用css解決的就不用js。後來用了各種絕對定位蓋住滾
使用layui彈出層的心得,解決使用layer iframe 沒有出現滾動條 導致頁面顯示不全
問題描述:在做後臺的時候想要實現這樣一個功能,點選彈出一個視窗,視窗是下拉選擇框,給使用者選擇。用到了layui,但是卻發現,彈窗雖然固定了高寬,但是裡面的下拉框,在顯示的時候卻被彈窗擋住了,導致資訊顯示不全,也沒滾動條。 layer.open({
阻止因出現滾動條導致頁面抖動
現在大多數頁面都是採用主體內容水平居中佈局<body> <div></div> </body>div{ width:1200px; margin:0 auto; }但是,這種佈局存在一個問題。現在的瀏覽器滾動條預設是
CSS3自定義滾動條樣式 -webkit-scrollbar
play 偽類 thumb area 沒有 :link 現在 自定義滾動條 box ::-webkit-scrollbar {/*隱藏滾輪*/display: none;} 前言 webkit支持擁有overflow屬性的區域,列表框,下拉菜單,textarea的滾動條自定
CSS3自定義滾動條樣式 之 -webkit-scrollbar
selection 單獨 窗口 請求 方塊 利用 源碼 bsp 進行 有沒有覺得瀏覽器自帶的原始滾動條很不美觀,同時也有看到很多網站的自定義滾動條顯得高端,就連chrome32.0開發板都拋棄了原始的滾動條,美觀多了。那webkit瀏覽器是如何自定義滾動條的呢? 前言
jQuery中獲取文檔的高度、可視區域高度以及滾動條距頁面頂部的高度
doc 支持 document span ros p s margin window 窗口 在寫頁面的時候,經常會碰到這樣的情況,就是要獲取文檔的高度、可視區域高度或者滾動條距頁面頂部的高度等情況。 但我總是有些愛搞混淆了,這裏還是簡單做個筆記吧,這裏只限於使用jQuer
css3自定義滾動條
enter ott char overflow htm har ado solid lang <!doctype html> <html lang="en"> <head> <meta charset="UTF-8">
QML之實現滾動條
Scrolbar.qml import QtQuick 2.7 import QtQuick.Controls 2.0 // 滾動條 Rectangle { id: scrollbar; opacity: 0 // 繫結到ListView元件 property
offsetTop 實現滾動條內內容定位
js程式碼: var _parent_top = document.getElementsByClassName('task-exe-phase-container')[0].offsetTop;var _phase_top = document.getElementsByClassName('phase_
vue中實現滾動條緩慢向上移動的效果
.vue //用於判斷按鈕何時顯示 <div class="btn-top" v-if="scrollHeight > alarmHeight"> <el-button type="info" icon="el-icon-arrow
網頁重新整理或者重新載入後滾動條的位置不變
<script type="text/javascript"> window.onbeforeunload = function(){ var scrollPos; if (typeof window.pageYOffset !=
javaScript實現滾動條事件
//滾動事件 function myScroll() { var i = document.body.scrollTop; var top = document.getElementById("
HTML5 移動端 實現滾動條
實現滾動條 相關程式碼: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title>
jQuery實現滾動條動態載入
//滾動條載入底部自動載入 $(function(){ //滑鼠滾動事件 $(window).scroll(function(){ console.log("滾動條到頂部的垂直高度:" + $(window).scrollTop() ); conso
IE瀏覽器滾動條遮住頁面內容怎麼處理?
IE瀏覽器的滾動條呈現半透明樣式,並且會自動隱藏和顯示,但是會遮住正常頁面顯示的一部分內容,就會影響我們頁面內容的展示,這是,我們只需要給body標籤新增css屬性:“-ms-overflow-sty
css3 自定義滾動條
::-webkit-scrollbar { width: 14px; height: 14px; } ::-webkit-scrollbar-track, ::-webkit-scrollbar-thumb { border-radius: 999px;
HTML中如何在div中實現滾動條?
overflow:scroll; /*任何時候都強制顯示滾動條*/ overflow:auto; /*需要的時候會出現滾動條*/ overflow-x:auto; /*控制X方向的滾動條*/ overflow-y:auto; /*控制Y方向的滾動條*/ 受ove
css3做一個滾動條
先上效果圖: html程式碼很簡單: <div> <span class="wrap"> <span class="wrap">週