iT邦幫忙

1

第一個 div 是有預設捲軸,若第二個 fixed ,怎麼樣清除 overflow?

假設有一個頁面是

123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>

想像他已經超出了你的瀏覽器頁面,右側出現預設捲軸
此時
如果我新增了一個 div 到這個頁面中

.fix {
display:none;
position: fixed;
left :0;
top :0;
width:100vw;
height:100vh;
background: #fff;
}
<div class="fix"></div>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>
123<br>

且原本 fix div是不存在的,是透過事件把這個 div 叫出來
這時候頁面還是可以上下滑動
雖然畫面已經被 fix 白色背景擋住
我的問題是
此時我有辦法暫時隱藏原本的overflow嗎?(不是 fix,是充滿123的那個預設捲軸)當 fix 被呼叫出來時?

1 個回答

2
dragonH
iT邦大師 1 級 ‧ 2019-06-24 00:41:32
最佳解答

codepen

大概猜一下你的需求

應該是要這樣的效果

不過如果把你所謂的那些123

放到某個div會更好

小松 Nana iT邦研究生 3 級 ‧ 2019-06-24 00:52:17 檢舉

謝謝你耶,感覺你滿理解的
我是看到airbnb的做法
https://www.airbnb.com.tw/?_set_bev_on_new_domain=1532163090_t%2BRbqCiQ8i1iFoqP

小松 Nana iT邦研究生 3 級 ‧ 2019-06-24 00:52:35 檢舉

你點"登入"後就會知道了~

dragonH iT邦大師 1 級 ‧ 2019-06-24 09:15:20 檢舉

喔對 他也是直接把body設為 overflow: hidden

我要發表回答

立即登入回答