中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CSS3中webkit-overflow-scolling怎么使用

發布時間:2022-03-09 15:20:48 來源:億速云 閱讀:415 作者:iii 欄目:web開發

這篇文章主要介紹“CSS3中webkit-overflow-scolling怎么使用”,在日常操作中,相信很多人在CSS3中webkit-overflow-scolling怎么使用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”CSS3中webkit-overflow-scolling怎么使用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

    我們都知道在ios的safari瀏覽器和app內核瀏覽器中,當一個h6頁面內容超出屏幕高度,我們手指去滑動屏幕的時候,只要手勢一離開屏幕,滾動立刻結束。這時候我們可以通過設置-webkit-overflow-scrolling=touch來使頁面可以順暢滾動,但是設置這個也會引出許多問題。

    1、單獨對body設置-webkit-overflow-scrollingtouch是無效的,需要針對html和body同時設置才有效果,代碼如下:

    html,body{

    height:100%;

    overflow:auto;

    -webkit-overflow-scrolling:touch;

    }

    2、父容器設置-webkit-overflow-scrolling=touch后,子容器不允許出現fixed固定的子元素,為什么這么說呢。因為當你設定-webkit-overflow-scrolling=touch后,你滑動屏幕的時候會發現fixed屬性失效了,他也跟著屏幕滾動了,只有當滾動停止的時候這個元素才會在固定到頁面上。顯然這不是我們要的結果。

    這里我的解決方法是不把-webkit-overflow-scrolling設置在body元素上,在需要滾動的地方另外增加div容器去設定,然后把需要fixed的容器都直接放在body元素內。

    3、單獨對div設定-webkit-overflow-scrolling屬性無效,經測試后發現,我需要先對父容器div1設定為有高度的容器,然后在對超出的子容器設定-webkit-overflow-scrolling屬性具體代碼如下:

    <style>.div-p{width:100%;height:500px;/*這是測試值,具體針對項目需求設置,不要超出子容器內容高度*/overflow:hidden;/*設不設定這個值對-webkit-overflow-scrolling沒有影響*/}

    .div-c{width:100%;height:2000px;overflow:auto;/*測試發現一定要設定這個值才起作用*/-webkit-overflow-scrolling:touch;}</style>

    <divclass="div-p">

    <divclass="div-c">我要滾動啊,,在ios要順暢啊</div>

    </div>

    經過反復測試發現如下設置也是能有效觸發-webkit-overflow-scrolling屬性的,具體代碼如下:

    <style>

    .content-box{

    height:500px;/*經過測試后發現只要設定的這個高度小于屏幕高度,-webkit-overflow-scrolling屬性也能有效觸發*/

    border:solid1pxgreen;

    overflow:auto;

    -webkit-overflow-scrolling:touch;}

    </style>

    <body>

    <divclass="content-box">哎呀我是要滾動的啊<br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    <br>

    有效果的哦。。。

    </div>

    </body>

    當然,以上的版本就得在html渲染結束的時候去改變他的高度,以達到和屏幕高度一致,但是這種方式的維護性太差,后來又找到一種解決方案,具體代碼如下:

    <style>

    .ios-scroll-father{

    position:absolute;

    top:0;

    bottom:0;

    left:0;

    width:10rem;

    height:100%;}

    .ios-scroll-child{

    position:absolute;

    top:0;

    bottom:0;

    left:0;

    width:10rem;

    overflow:auto;}

    -webkit-overflow-scrollingtouch

    </style>

    <divclass="ios-scroll-father">

    <divclass="ios-scroll-child">

    我要完美解決ios的順暢滑動問題啊,,,來試試咯。演示,請自己添加代碼到超出屏幕內容哦~

    </div>

    </div>

    這里,要提個醒,設置-webkit-overflow-scrolling屬性的同時要么不要設定height,要么height+padding的高度不要超出屏幕的高度,不然你會發現等你滾動到頂部或者底部的時候會被截取掉一部分,需要你在滑動才能出現。。。這是個坑啊,本人一不小心設定高度百分百和padding后發現了這種現象,然后找來找去都找不到問題,只能刪減代碼慢慢排查。

    4、當然,如果只是這些問題,那還真是好解決,可是,可是,某天寫了個列表,需要做滾動分頁特效,這時候我去兼聽滾動條的滾動事件,發現scrollTop不會時時更新,要等到頁面停止滾動后才能獲取到scrollTop值。

到此,關于“CSS3中webkit-overflow-scolling怎么使用”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

巧家县| 兴仁县| 阿克陶县| 上杭县| 公主岭市| 南皮县| 高邑县| 玉树县| 沙湾县| 孝昌县| 玉田县| 孝感市| 镶黄旗| 贞丰县| 板桥市| 红安县| 高阳县| 巫山县| 伊宁市| 闽侯县| 双峰县| 会理县| 聂荣县| 新闻| 普洱| 普定县| 梁平县| 腾冲县| 岳池县| 屏山县| 永定县| 吉林省| 盐山县| 琼海市| 温州市| 平泉县| 江津市| 普陀区| 若尔盖县| 葫芦岛市| 陆良县|